取groupby
结构:
max_time = df_deh.groupby(['client_id','acc_number'])['time'].max()
这是它的格式:
client_id acc_number
0 885020 2019-12-12 19:38:00
889942 2020-12-21 14:31:39
1 896967 2020-12-15 16:25:52
2 913756 2020-11-11 15:18:17
Name: time, dtype: datetime64[ns]
我需要从它制作一个dictionary
。keys
应该是client_id
和acc_number
值的合并(最好中间有一个-
),关键的items
是datetime
值。
您可以使用to_dict
,然后以您想要的格式创建密钥:
{f'{k[0]}-{k[1]}': v for k, v in max_time.to_dict().items()}
{'0-885020': Timestamp('2019-12-12 19:38:00'), '0-889942': Timestamp('2020-12-21 14:31:39'), '1-896967': Timestamp('2020-12-15 16:25:52'), '2-913756': Timestamp('2020-11-11 15:18:17')}