我试图读取一个包含如下数据的csv文件:
data.csv:
time,value
12/31/2015 7:00:00 PM,275.9271
12/31/2015 7:00:02 PM,278.559
12/31/2015 7:00:10 PM,277.5949
12/31/2015 7:00:12 PM,270.0564
我的问题是有很多数据,如果我试图读取文件,同时告诉读者解析时间列,如:
df = pd.read_csv('data.csv', parse_dates = ['time'])
它非常慢。另一方面,如果我读取数据,然后尝试转换时间列,速度也很慢:
df['time'] = pd.to_datetime(df.time)
环顾网络之后,解决方案似乎是指定时间的格式,但这失败了,因为月份和小时缺少零填充:
pd.to_datetime(df.time,format='%b/%d/%Y %H:%M:%S %p')
ValueError: time data '10/26/2016 7:00:01 PM' does not match format '%b/%d/%Y %H:%M:%S %p' (match)
有没有办法使格式字符串与非标准数据相匹配?或者加速一种自动识别方法?谢谢您!你知道吗
我认为
%b
应该是%m
?你知道吗我发现自己经常回到这个网站:http://strftime.org/
或者只是Python文档:https://docs.python.org/2/library/datetime.html#strftime-and-strptime-behavior
示例
相关问题 更多 >
编程相关推荐