我无论如何也想不出这件事。我正在尝试基于我的数据帧中的两列重新索引数据帧:
Index Donation AbsSiz Affil DonID Datetime_Obj
19 2000 25598000 Con ffed93a8-2c3d-770c-1e67-e76b2d7ec738 2018-07-31 17:03:35.791
20 360 4607640 Lib 62d87d76-478d-4c09-9ecb-03d32dfc7941 2018-07-31 17:03:35.791
21 60 767940 Con fc53a961-036c-4043-01aa-57ccfa839ee5 2018-07-31 17:03:35.791
22 70 895930 Lib d1c81281-8f0b-e991-d8ed-6031ac66af92 2018-07-31 17:03:35.791
23 27 345573 Con 135fa1b5-2304-c761-0df7-147132c35cd8 2018-07-31 17:03:35.791
24 8206 105028594 Con 7aef85bd-bc67-9905-8614-aac65e2ae21e 2018-07-31 17:03:35.791
25 32 409600 Lib 03f7c33a-920e-67db-78bd-640e8009c8a2 2018-07-31 17:03:35.791
26 28000 358400000 Con 0a2c264c-bc81-69f7-d8fe-05b521d79d9a 2018-07-31 17:03:35.791
27 230 2944000 Con 4e868220-7687-8acc-c3bd-f09624c4d15b 2018-07-31 17:03:35.791
28 3 38400 Con 5e57de8d-3f37-d943-af95-0834dcaf8efd 2018-07-31 17:03:35.791我的目标是对此进行重新索引,以便将datetime_obj的同一dt.minute下的所有行分组在一起,并将基于关联的分组的另一级索引组合在一起。
我知道这可能很简单,但我已经碰壁好几个小时了。
发布于 2018-08-02 08:27:37
我不太清楚您所说的“重新索引”是什么意思,但是从表面上看,我会将DataFrame索引设置为分钟和关联
df['datetime_obj_min'] = df['datetime_ob'].dt.minute
df.set_index(['datetime_obj_min', 'Affil'], inplace=True, drop=True)您提到了想要分组,但没有想要执行的聚合。下面是一个按分钟和时间相加的捐款的例子:
df['datetime_obj_min'] = df['datetime_ob'].dt.minute
df.groupby(['datetime_obj_min', 'Affil'])['Donation'].sum()您还提到想要分组在一起:
df['datetime_obj_min'] = df['datetime_ob'].dt.minute
df.sort_values(['datetime_obj_min', 'Affil'], inplace=True)希望这能有所帮助。
https://stackoverflow.com/questions/51641930
复制相似问题