groupby сначала как словарь в pandas - PullRequest
0 голосов
/ 23 апреля 2020

У меня есть фрейм данных, как показано ниже.

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'}

1 Ответ

1 голос
/ 23 апреля 2020

Используйте 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'}
...