我有如下所示的数据框。
session slot_num appt_time
s1 1 2020-01-06 09:00:00
s1 2 2020-01-06 09:20:00
s1 3 2020-01-06 09:40:00
s1 3 2020-01-06 09:40:00
s1 4 2020-01-06 10:00:00
s1 4 2020-01-06 10:00:00
s2 1 2020-01-06 08:20:00
s2 2 2020-01-06 08:40:00
s2 2 2020-01-06 08:40:00
s2 3 2020-01-06 09:00:00
s2 4 2020-01-06 09:20:00
s2 5 2020-01-06 09:40:00
s2 5 2020-01-06 09:40:00
s2 6 2020-01-06 10:00:00
s3 1 2020-01-09 13:00:00
s3 1 2020-01-09 13:00:00
s3 2 2020-01-09 13:20:00
s3 3 2020-01-09 13:40:00
从上面我想创建一个字典,其键为会话,值作为每个appt_time的开始时间。
预期输出:
d = {'S1':'2020-01-06 09:00:00',
'S2':'2020-01-06 08:20:00',
'S3':'2020-01-09 13:00:00'}
答案 0 :(得分:1)
使用DataFrame.drop_duplicates
并将sesion
转换为索引,为Series
选择列,最后使用Series.to_dict
:
d = df.drop_duplicates('session').set_index('session')['appt_time'].to_dict()
print (d)
{'s1': '2020-01-06 09:00:00', 's2': '2020-01-06 08:20:00', 's3': '2020-01-09 13:00:00'}