为了账号安全,请及时绑定邮箱和手机立即绑定

Python Pandas - 根据其他列获取列的最小值并对另一列进行分组

Python Pandas - 根据其他列获取列的最小值并对另一列进行分组

慕少森 2023-06-13 17:02:52
我有三列,它们看起来像这样:Symbol    |  Type  |  Date    |  Value----------------------------------------Reliance  |  Buy   | 01/03/20 | 230000Reliance  |  Sell  | 04/03/20 | 980000Reliance  |  Buy   | 17/03/20 |  97000TCS       |  Buy   | 10/03/20 | 120000TCS       |  Buy   | 07/03/20 | 890000TCS       |  Sell  | 05/03/20 | 300000我想选择最小date和组value列和type列。类型栏可以显示买入和卖出(一个交易品种只有两个)。最终结果如下所示:Symbol    |  Type  |  Date    |  Value----------------------------------------Reliance  |  Buy   | 01/03/20 |  327000Reliance  |  Sell  | 04/03/20 |  980000TCS       |  Buy   | 05/03/20 | 1010000TCS       |  Sell  | 05/03/20 |  300000到目前为止,我能够在没有日期列的情况下成功分组。代码如下所示:new_df = the_df.groupby(['symbol_', type_col])[value_col].sum().reset_index()我试着这样做:new_df = the_df.groupby(['symbol_', type_col, date_col])[value_col].sum().reset_index()df_new = new_df[new_df.groupby('symbol_').date_of_initmation_to_company_.transform('min') == new_df[date_col]]但它没有按预期工作。实际上第二个喜欢并.transform没有做任何改变。你能告诉我正确的方法吗?
查看完整描述

1 回答

?
RISEBY

TA贡献1856条经验 获得超5个赞

然后

out = df.groupby(['Symbol','Type']).agg({'Date' : 'first' , 'Value' : 'sum'}).reset_index()



查看完整回答
反对 回复 2023-06-13
  • 1 回答
  • 0 关注
  • 81 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信