我有以下数据框,超过400 000行。
df = pd.DataFrame({'date' : ['03/02/2015 23:00',
'03/02/2015 23:30',
'04/02/2015 00:00',
'04/02/2015 00:30',
'04/02/2015 01:00',
'04/02/2015 01:30',
'04/02/2015 02:00',
'04/02/2015 02:30',
'04/02/2015 03:00',
'04/02/2015 03:30',
'04/02/2015 04:00',
'04/02/2015 04:30',
'04/02/2015 05:00',
'04/02/2015 05:30',
'04/02/2015 06:00',
'04/02/2015 06:30',
'04/02/2015 07:00']})
我试图尽快解析pandas中csv文件的日期列。我知道如何使用read_csv来完成它,但这需要花费很多时间!此外,我尝试了以下哪个有效,但也很慢:df['dateTimeFormat'] = pd.to_datetime(df['date'],dayfirst=True)
我如何能够以非常快的速度将日期列解析为日期时间?
非常感谢你的帮助,
皮尔
答案 0 :(得分:3)
您可以按http://strftime.org/:
定义datetime
s的格式
df = pd.concat([df] * 1000, ignore_index=True)
%timeit df['dateTimeFormat1'] = pd.to_datetime(df['date'],dayfirst=True)
2.94 s ± 285 ms per loop (mean ± std. dev. of 7 runs, 1 loop each)
%timeit df['dateTimeFormat2'] = pd.to_datetime(df['date'],format='%d/%m/%Y %H:%M')
55 ms ± 1.47 ms per loop (mean ± std. dev. of 7 runs, 10 loops each)