Python 将dataframe中的相同列值分组,并将相同值的总和添加为新列
我有一个熊猫Python 将dataframe中的相同列值分组,并将相同值的总和添加为新列,python,pandas,dataframe,pandas-groupby,Python,Pandas,Dataframe,Pandas Groupby,我有一个熊猫数据帧,如下所示 df = pd.DataFrame({ 'Column1': ['A', 'B', 'C', 'A', 'B', 'A', 'C', 'A', 'B', 'B'], 'Column2': [1, 2, 3, 4, 5, 6, 7, 8, 9, 10], 'Column3': ['X','Y','Z','X', 'X', 'Z','X','Y','Z','X']}) 我想按列1分组。我还想对第2列中的这些值求和,并将
数据帧
,如下所示
df = pd.DataFrame({
'Column1': ['A', 'B', 'C', 'A', 'B', 'A', 'C', 'A', 'B', 'B'],
'Column2': [1, 2, 3, 4, 5, 6, 7, 8, 9, 10],
'Column3': ['X','Y','Z','X', 'X', 'Z','X','Y','Z','X']})
我想按列1分组。我还想对第2列中的这些值求和,并将第3列中的值作为新列添加
Column1 Column2 Column3
0 A 1 X
1 B 2 Y
2 C 3 Z
3 A 4 X
4 B 5 X
5 A 6 Z
6 C 7 X
7 A 8 Y
8 B 9 Z
9 B 10 X
预期结果
Column1 Column2 X Y Z
0 A 19 5 8 6
1 B 26 15 2 9
2 C 10 7 0 3
我看了样本问题。但是我找不到我的问题的答案。非常感谢您提供的任何帮助。请配合使用:
谢谢,兄弟,这很有效
df = df.pivot_table(index='Column1',
columns='Column3',
values='Column2',
aggfunc='sum',
fill_value=0).reset_index().rename_axis(None, axis=1)
df.insert(1, 'Column2', df.sum(axis=1))
print (df)
Column1 Column2 X Y Z
0 A 19 5 8 6
1 B 26 15 2 9
2 C 10 7 0 3