在数据框中解析两种不同格式的日期

时间:2015-06-20 21:47:40

标签: python parsing datetime pandas dataframe

我有一个列有2种不同格式的日期我正在尝试使用to_datetime的熊猫转换为日期时间 这是代码

import pandas as pa
pa.to_datetime(data["servertime"], format="%a %b %d %H:%M:%S %Y")
例如 -               servertime 2014年11月4日星期二12:01:15

但很少有行包含以下格式的数据 u'2014-11-04 13:15:13 +0000' 这会引发错误

如何解析同一行中存在的两种不同格式?

如果我不能那么如何转换/删除/标记行(最好没有硬编码条件)?

1 个答案:

答案 0 :(得分:1)

首先使用dateutil.parser.parse()解析字符串,而不是使用to_datetime()

In [2]: from dateutil.parser import parse

In [3]: dt1 = "Tue Nov 4 12:01:15 2014"

In [4]: dt2 = "2014-11-04 13:15:13 +0000"

In [5]: parse(dt1)
Out[5]: datetime.datetime(2014, 11, 4, 12, 1, 15)

In [6]: parse(dt2)
Out[6]: datetime.datetime(2014, 11, 4, 13, 15, 13, tzinfo=tzutc())

然后,您可以将datetime.datetime值提供给数据框。

相关问题