我有一个如下所示的数据框Fruits_df
A B
mango 25
banana 10
apple 50
mango 35
banana 45
apple 20
我想添加一列C,其中对应于A列中的每个条目,将填充B列中的值的总和,即在C列中,对应于芒果的两个条目均为(25 + 35)= 60
所需的输出
A B C
mango 25 60
banana 10 55
apple 50 70
mango 35 60
banana 45 55
apple 20 70
我尝试了一些事情。
Fruits_df.groupby(['A']).sum()
这给出了总和值,但是我很困惑如何在新列中填充这些值。
我有一个清单
Fruits = ['mango', 'banana', 'apple']
我也尝试过类似的
sum = [[],[]]
for i in Fruits:
Fruits_Sum = Fruits_df.loc[Fruits_df['A']==i]
total = sum(Fruits_Sum['B'])
sum[0].append(i)
sum[1].append(total)
df_sum = pd.DataFrame(sum).transpose()
我敢肯定,我想得太多了。有什么简单的方法吗?