如何在聚合和groupby之后对齐列名(python)

2024-10-03 09:19:31 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个数据帧,我使用groupby()和aggregate() 经过这个过程,我得到了我想要的桌子。 唯一的问题是我聚合的列高于其他列。你知道吗

我确实尝试过reset_index(),它解决了列问题,但是没有合并具有相同分组值的数据帧。 如何对齐列,同时保持相同的值合并?你知道吗

        sensors_location_arrived = self.data.loc[self.data.phone.isin(phones_location)].groupby(
            ['sensor', 'phone']).aggregate({'date': 'last'})
                                   date
sensor       phone
C03629361E50 941250 2019-04-09 02:01:39
C0362F365650 941250 2019-04-07 14:00:32
C03631362350 930576 2019-04-09 10:03:42
             940187 2019-04-09 22:04:20
C03631362650 941250 2019-04-09 10:03:00
C03632363A50 941250 2019-04-07 22:01:56
C03634363F50 941250 2019-04-07 18:00:23
C03821392E4D 941250 2019-04-09 14:00:27
C03829391B4D 941250 2019-04-08 10:00:21

想要的结果是: (reset index取消合并(如第3行),我想保留)

sensor       phone   date
C03629361E50 941250 2019-04-09 02:01:39
C0362F365650 941250 2019-04-07 14:00:32
C03631362350 930576 2019-04-09 10:03:42
             940187 2019-04-09 22:04:20
C03631362650 941250 2019-04-09 10:03:00
C03632363A50 941250 2019-04-07 22:01:56
C03634363F50 941250 2019-04-07 18:00:23
C03821392E4D 941250 2019-04-09 14:00:27
C03829391B4D 941250 2019-04-08 10:00:21

Tags: 数据selfdatadateindexphonelocationsensor