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

在同一DataFrame中实现不同行列乘法运算并创建新列

解决方案

首先明确核心计算:30 × 0.115 = 3.45,这是你需要用到的固定值。你的现有代码存在语法错误,且思路绕远了,下面分两种场景给出正确写法:

场景1:所有行的新列都使用3.45这个计算结果

直接给新列赋值即可:

DF['%'] = 30 * 0.115

场景2:仅给特定条件的行赋值3.45

如果是要给PRO_CHARGE等于"(1.0, 99283.0)"的行赋值,其他行可设为空值或默认值:

# 先初始化新列为空值
DF['%'] = pd.NA
# 给符合条件的行赋值计算结果
DF.loc[DF['PRO_CHARGE'] == "(1.0, 99283.0)", '%'] = 30 * 0.115

原代码的问题说明

  • .loc取值必须用方括号[],不能用圆括号()
  • 条件判断里多了一个多余的右括号),需要删除
  • 无需关联PRO_CHARGE为"(0.0, 99283.0)"的行,直接使用计算好的固定值即可

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.31 06:06:45