基于另一列的列中的Python百分比计算

时间:2020-03-29 04:34:27

标签: python pandas pandas-groupby

我有一个这样的数据框:

enter image description here

如何添加这样的另一列:

enter image description here

值49.11%等于“国家和城市”组的总和(30.2 + 20.8 + 10.5)乘以30.2。

我使用groupbysum()来获得每种(country - city)组合的总和,但无法获得循环来填充百分比列。

谢谢。

1 个答案:

答案 0 :(得分:0)

我认为您正在寻找转换

df['percentage'] = df.groupby(['country', 'city'])['length'].transform(lambda z: z / z.sum() * 100)