我在处理我的数据。 这是我的数据。
我这样编写代码。
complete_data = complete_data.groupby(['STDR_YM_CD', 'TRDAR_CD' ]).sum().reset_index()
执行代码后,我得到了如下图所示的数据框
但我想根据SVC_INDUTY_CD栏中的前三个字母来汇总这些值,如下图所示。
提前感谢
答案 0 :(得分:1)
我确信有更好的方法,但这是你可以做到的一种方式:
complete_data['first_three_temp'] = complete_data['SVC_INDUTY_CD'].str[:3]
complete_data = complete_data.groupby(['STDR_YM_CD', 'TRDAR_CD', 'first_three_temp' ], as_index=False).sum()
complete_data.drop('first_three_temp', axis=1, inplace=True)
这将添加一个临时列,其中仅包含SVC_INDUTY_CD列的前三个字符。然后,您可以分组并删除临时列。正如我所说,我确信有一种更有效的方式,所以我不确定你是否会受到数据集大小的限制。