You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Pandas列转float后列相减报TypeError错误排查求助

问题排查与解决

核心问题是语法错误,和列的数据类型无关:

  • 你写的df["HTB_Price" - "McMaster_Price"]里,"HTB_Price"和"McMaster_Price"是两个字符串,Python会直接尝试对字符串做减法运算——这本身就不被支持,所以触发TypeError。
  • 正确的逻辑是:先分别取出两列的数值(已经是float64类型),再对这两列的数值做元素级减法。

正确写法示例

# 确认列类型(你已完成此步骤)
print(df.dtypes)

# 正确计算价格差
Price_Diff = df["HTB_Price"] - df["McMaster_Price"]

# 若要将结果存入DataFrame新列
df["Price_Diff"] = df["HTB_Price"] - df["McMaster_Price"]

这样就能得到两列float类型数值相减的结果。

内容的提问来源于stack exchange,提问作者Christian Brune

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.28 16:38:11