我有一个熊猫数据框,看起来像这样:
时间戳
|
位置
|
数据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'”错误。我尝试过其他不同的方法,但它们也不起作用。
谁能帮我一下吗?
提前谢谢。