我有从pandas数据帧获得的以下字符串值。
QLinearGradient()
如何将其转换为datetime.datetime(2017,5,16)对象?
THX。
答案 0 :(得分:2)
您需要创建一个自定义日期解析器,在这里为您提供一些可重现的示例:
import pandas as pd
import datetime
from StringIO import StringIO
st = u'01:19 AM Eastern, Tuesday, May 16, 2017'
def parse_date(date_string):
date_string = ",".join(date_string.split(',')[-2:]).strip()
return datetime.datetime.strptime(date_string, '%B %d, %Y')
df = pd.read_csv(StringIO(st), header=None, sep="|", date_parser=parse_date, parse_dates=[0])
如果您按如下方式打印dataFrame内容:
print("dataframe content")
print(df)
你会得到这个输出:
dataframe content
0
0 2017-05-16
检查dtypes确认该列现在是datetime类型:
print("dataframe types")
print(df.dtypes)
输出:
dataframe types
0 datetime64[ns]
dtype: object