Ответ 1
Вы можете сделать это, где td
- ваша серия timedeltas. Деление преобразует наносекундные дельта в дельта дней, а конверсия в int падает до целых дней.
import numpy as np
(td / np.timedelta64(1, 'D')).astype(int)
Я хотел бы создать столбец в кадре данных pandas, который представляет собой целочисленное представление количества дней в столбце timedelta. Можно ли использовать "datetime.days" или мне нужно сделать что-то более ручное?
timedelta column
7 дней, 23:29:00
целочисленный стол дня
7
Вы можете сделать это, где td
- ваша серия timedeltas. Деление преобразует наносекундные дельта в дельта дней, а конверсия в int падает до целых дней.
import numpy as np
(td / np.timedelta64(1, 'D')).astype(int)
Используйте атрибут dt.days
. Предполагая, что td
- имя вашей серии timedelta, получите доступ к этому атрибуту через:
td.dt.days
Вы можете использовать функцию pd.to_timedelta
(см. https://pandas.pydata.org/pandas-docs/stable/generated/pandas.to_timedelta.html)
Из документации:
pd.to_timedelta('1 days 06:05:01.00003')
Timedelta('1 days 06:05:01.000030')
И он также работает с столбцами dataframe.