Python 如何在特定列中添加具有相同字符串值的行,而不转换数据帧?
我已经试着让这个df在线路上 我所拥有的Python 如何在特定列中添加具有相同字符串值的行,而不转换数据帧?,python,pandas,Python,Pandas,我已经试着让这个df在线路上 我所拥有的 Name Id Value_X Value_Y 0 Alex 34 1.1 2.5 1 Julo 26 1.7 2.4 2 Alex 34 0.9 0.5 pd.pivot_table(df, index=['Name','Id'],values=['Value_X','Value_Y'],aggfunc='sum') 但我想要的是: Name Id Va
Name Id Value_X Value_Y
0 Alex 34 1.1 2.5
1 Julo 26 1.7 2.4
2 Alex 34 0.9 0.5
pd.pivot_table(df, index=['Name','Id'],values=['Value_X','Value_Y'],aggfunc='sum')
但我想要的是:
Name Id Value_X Value_Y
0 Alex 34 2.0 3.0
1 Julo 26 1.7 2.4
我使用了.groupby()
,但它总是在索引中添加名称和Id('Alex','Id'),但我希望数据帧的列不做任何修改。您可以尝试以下方法:
如果您想要您选择的列
df.groupby(['Name','Age'])['Value_X','Value_Y'].sum()
您需要与groupby一起重置索引()
df.groupby(['Name','Id'])['Value_X','Value_Y'].sum().reset_index()
或as_index=False
df.groupby(['Name','Id'],as_index = False)['Value_X','Value_Y'].sum()
您只是想添加一个
.reset_index()
?或者-也许更好df.groupby(['Name','Id'],as_index=False).sum()
?无需透视,只需执行groupby+sum即可