El pandas DataFrame utiliza Timedelta para establecer el tiempo en formato H:M:S:f como 00:00:00:000.
Tengo un DataFrame de pandas con la siguiente columna (la primera columna = índice):
0 14:43:45:921
1 14:43:45:923
2 14:43:45:925
Me gustaría modificar esta columna, o añadir otra columna con la hora que empieza en 0:
0 00:00:00.000
1 00:00:00.002
2 00:00:00.004
Hasta ahora, he intentado el siguiente código:
df['time'].apply(pd.Timedelta)
Esto me da el siguiente error:
Se esperaba el formato hh:mm:ss
Para mí, el problema es:
a) convertir el formato de tiempo HH:MM:SS:fff
a HH:MM:SS.fff
y
b) hacer que la función timedelta
funcione.
¿Alguien tiene alguna sugerencia? ¡Gracias!
davy.ai
Para solucionar el primer problema, puedes utilizar la manipulación de cadenas para reemplazar los
:
entre los segundos y los milisegundos con un.
. Aquí tienes un fragmento de código de ejemplo para hacer esto:Ahora, tu DataFrame se vería así:
Para solucionar el segundo problema, puedes utilizar la función
timedelta
para restar el valor de tiempo mínimo de cada valor en la columna, comenzando así el tiempo desde0
. Aquí tienes un fragmento de código de ejemplo para hacer esto:Ahora, tu DataFrame se vería así:
¡Espero que esto te ayude! Avísame si tienes alguna pregunta adicional.