У меня есть набор данных, который выглядит следующим образом
I.D Timestamp
F322 2019-02-20 23:47:30.057
F322 2019-02-20 23:48:01.959
F322 2019-02-20 23:50:04.308
F422 2019-02-24 22:22:37.418
F422 2019-02-24 22:24:05.397
Я пытаюсь создать новый столбец, который вычитает разность каждой восходящей (уже отсортированной) временной метки по предыдущей временной метке прямо перед ней, носгруппированы по столбцу ID.Некоторые I.D имеют 2, 3 или 4 метки времени.
Вывод будет выглядеть примерно так
I.D Timestamp Minutes
F322 2019-02-20 23:47:30.057 NaN
F322 2019-02-20 23:48:01.959 0.5
F322 2019-02-20 23:50:04.308 2.0
F422 2019-02-24 22:22:37.418 NaN
F422 2019-02-24 22:24:05.397 1.5
Я использовал что-то в прошлом, например, ниже, для чего-то другого
df.groupby('I.D')['Timestamp'].agg(lambda x: x.iat[0] < x.iat[-1])
np.where(df['I.D'].map(mask), 1, 2)
Чтобы получить значение 1или 2, но это было только для первой и второй строк сгруппированных по идентификатору и приводило только к значению, а не к калькуляции.
Спасибо за внимание!