Python: convierte timedelta a int en un dataframe

Me gustaría crear una columna en un dataframe de pandas que sea una representación entera del número de días en una columna de timedelta. ¿Es posible usar ‘datetime.days’ o necesito hacer algo más manual?

columna de timedelta

7 días, 23:29:00

columna de día entero

7

Utilice el atributo dt.days . Suponiendo que td es el nombre de su serie timedelta, acceda a este atributo a través de:

 td.dt.days 

También puede obtener los atributos de seconds y microseconds de la misma manera.

Podrías hacer esto, donde td es tu serie de timedeltas. La división convierte los deltas de nanosegundos en deltas diurnos, y la conversión a int se reduce a días enteros.

 import numpy as np (td / np.timedelta64(1, 'D')).astype(int) 

Los objetos de Timedelta tienen atributos de instancia de solo lectura .days , .seconds y .microseconds .