¿Por qué pandas.to_datetime es lento para formatos de hora no estándar como '2014/12/31'?
Tengo un archivo .csv en ese formato
timestmp, p
2014/12/31 00:31:01:9200, 0.7
2014/12/31 00:31:12:1700, 1.9
...
y cuando se lee víapd.read_csv
y convertir la hora str a datetime usandopd.to_datetime
, el rendimiento cae dramáticamente. Aquí hay un ejemplo mínimo.
import re
import pandas as pd
d = '2014-12-12 01:02:03.0030'
c = re.sub('-', '/', d)
%timeit pd.to_datetime(d)
%timeit pd.to_datetime(c)
%timeit pd.to_datetime(c, format="%Y/%m/%d %H:%M:%S.%f")
y las actuaciones son:
10000 loops, best of 3: 62.4 µs per loop
10000 loops, best of 3: 181 µs per loop
10000 loops, best of 3: 82.9 µs per loop
Entonces, ¿cómo podría mejorar el rendimiento depd.to_datetime
al leer la fecha de un archivo csv?