Py学习  »  Python

Python Pandas-Dataframe-根据另一列添加列,该列具有来自另两列的数学运算

Sara.SP92 • 3 年前 • 1135 次点击  

我有一个熊猫数据框,看起来像这样:

时间戳 位置 数据A 数据B 数据C
16508 法国 0.03 0.06 0.15
16510 英格兰 0.05 0.07 0.11
16515 英格兰 0.04 0.03 0.87

我想做的是:

  • 为“位置”列中的每个不同值添加一个新列。
  • 在这个新列中,添加数据A和数据B之间百分比的除法(数据A/B*100)。

预期产出将是:

时间戳 位置 数据A 数据B 数据C 去法国 去英国
16508 法国 0.03 0.06 0.15 50 0
16510 英格兰 0.05 0.07 0.11 0 71.42
16515 英格兰 0.04 0.03 0.87 0 133.33

我尝试了以下方法:

for column in data['Place'].unique():
    column_name = f'To {Place}'
    data[column_name] = data[data['Place'] == column]['Data A'].div(['Data B'])*100
    data[column_name].fillna(method='ffill', inplace=True)
    data[column_name].fillna(value=0, inplace=True)

但它不起作用。我得到一个“'list'对象没有属性'div'”错误。我尝试过其他不同的方法,但它们也不起作用。

谁能帮我一下吗?

提前谢谢。

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/133418
 
1135 次点击  
文章 [ 2 ]  |  最新文章 3 年前