使用parse_dates从熊猫中的多个列中解析日期

时间:2018-09-30 20:23:39

标签: python-3.x pandas

我有一个文本文件,其中月份,日期和年份位于不同的列中。我想将它们合并为一列,并以日期格式对其进行隐蔽。我正在尝试在熊猫read_table中使用parce_dates选项。但这不起作用,并给我错误file structure not yet supported

dateparse = lambda x: pd.datetime.strptime(x, '%m-%d-%y')
date = pd.read_table("date.txt", sep = ' ', parse_dates = {'date':['month', 'day','year']}, date_parser=dateparse)

我的数据如下:

Data

3 个答案:

答案 0 :(得分:0)

删除date_parser参数,它将正常工作:

date = pd.read_table('date.txt', sep=' ', parse_dates={'date': ['month', 'day','year']})

答案 1 :(得分:0)

将数据作为pandas DataFrame读取,并创建一个合并日期的新列

df = pd.read_csv('date.txt', sep = ' ')
df['date'] = pd.to_datetime(df[['month','day','year']])

答案 2 :(得分:0)

可以在 pandas read_ 步骤中解析来自多个列的自定义日期。

date_parser= lambda x,y,z: datetime.strptime(f"{x}.{y}.{z}", "%m.%d.%Y")
date = pd.read_table('date.txt', sep=' ', parse_dates={'date': ['month', 'day','year']}, date_parser=date_parser)