熊猫分组:总结不同的价值观,并保持共同的价值观

时间:2019-05-21 19:03:49

标签: python pandas pandas-groupby

我想按名称将下表分组:

  • 对“数量”列求和

  • 采用价格,汇率和货币的通用值。

enter image description here

我想知道这样做的最佳方法是什么?

这是我尝试过的:

quantity_col = position_trade_df.groupby("Name").sum()['Quantity']
position_trade_df = position_trade_df.drop('Quantity', axis =1).drop_duplicates()
position_trade_df.set_index("Name", inplace=True)
position_trade_df['Quantity'] = quantity_col

谢谢!

1 个答案:

答案 0 :(得分:1)

这应该可以解决问题。您可以取数量的总和,其余的可以使用max,因为组中的所有值都相同。

output = df.groupby('Name').agg({'Quantity':'sum','Price':'max','Exchange Rate':'max','Currency':'max'}).reset_index()