我在Pandas数据帧的列中有ISO 8601格式的时间戳字符串。我正在寻找将此列字符串转换为Pandas数据时对象的最有效方法。 pd.to_datetime()有效,但我的数据帧大约有750万行,因此非常慢。
我可以使用strftime语法指定格式以避免自动格式检测,并且(我假设)大大加快了转换速度。
import pandas as pd
pd.to_datetime('2013-04-27 08:27:30.000001540', format='%Y-%m-%d %H:%M:%S.%f')
给我:
ValueError: unconverted data remains: 540
如果我砍掉时间戳的最后三个字符,这就完美了。似乎优雅的解决方案是确定Python兼容的strftime指令纳秒。我试过%9N,%N,%9。有什么想法吗?