У меня есть код, который использует фрейм данных с временными метками и соответствующими значениями.
Я создал новый столбец, который вычисляет разницу во времени между каждой отметкой времени, но моя проблема заключается в том, что в первой строке есть разница во времени, восходящая к дате эпохи Linux в 1970 году.
Я хотел бы изменить это так, чтобы разницы во времени не было или разница была минимальной, чтобы не влиять на мой код (я устанавливаю значения в nan, если разница во времени между часами больше часа).
Вот код, который я использовал для вычисления разницы во времени и добавления столбца к фрейму данных.
df['timediff'] = (df['datetime']-df['datetime'].shift().fillna(pd.to_datetime("00:00:00", format="%H:%M:%S")))
Вот пример выходных данных.Как вы видите, время составляет 43 000+ дней.Я хотел бы быть 0 или максимум 30 мин.
datetime l1 ... l16 timediff
0 2019-03-02 00:27:59 NaN ... NaN 43524 days 00:27:59
1 2019-03-02 00:46:35 0.1 ... 0.3 0 days 00:18:36
2 2019-03-02 01:33:01 0.2 ... 0.6 0 days 00:46:26
Мне просто интересно, можно ли установить эталонное время программы на что-то другое.Я рассмотрел, возможно, добавление строки раньше с более близким временем даты или даже ручным изменением этого значения, но я получаю некоторые неприятные ошибки в будущем.Я думаю, что самый простой способ - просто изменить исходную дату с самого начала, чтобы избежать этого.