У меня есть DataFrame со столбцами TIME_IN и TIME_OUT (datetime с точностью до секунды). Я хочу новый DF с суммой продолжительности (TIME_OUT - TIME_IN) по дате. Каждый день длится с 5 утра до 5 утра, поэтому я тоже подстраиваюсь под него.
Это часть мини-проекта по обучению себе Панд, но мое следующее приложение будет гораздо более сложным, поэтому ЭФФЕКТИВНОСТЬ - это ключ к успеху. меня.
Я пробовал два подхода (ресэмпл и групповой), но оба имеют одну и ту же проблему: столбец timedelta DURATION не суммируется.
df["DATE"] = pd.to_datetime((df["TIME_IN"]
- dt.timedelta(hours=hrEnd)).dt.date)
df["DURATION"] = df["TIME_OUT"] - df["TIME_IN"]
dfGroupBy= df.groupby("DATE").sum()
df.setindex("DATE", inplace=True)
dfResample = df.resample("D").sum()
Кажется, Панды не суммируютСтолбцы типа timedelta64, как я и пытался, поэтому возвращаемый DataFrame просто не включает столбец DURATION. Какой самый эффективный способ сделать это?
РЕДАКТИРОВАТЬ: Вот пример необработанных данных прямо в df: ![enter image description here](https://i.stack.imgur.com/FkRkO.png)