熊猫中的CSV日期解析

时间:2020-10-24 16:36:10

标签: python pandas date parsing

我正在尝试从以下示例数据集中解析日期


No,year,month,day,hour,pm2.5,DEWP,TEMP,PRES,cbwd,Iws,Is,Ir
1,2010,1,1,0,NA,-21,-11,1021,NW,1.79,0,0
2,2010,1,1,1,NA,-21,-12,1020,NW,4.92,0,0
3,2010,1,1,2,NA,-21,-11,1019,NW,6.71,0,0
4,2010,1,1,3,NA,-21,-14,1019,NW,9.84,0,0

我的代码如下:

dateparser = lambda x: pd.datetime.strptime(x, "%Y %m %d %H")`
dataset = pd.read_csv("raw.csv", parse_dates=['year', 'month', 'day', 'hour'], index_col = 0,date_parser=mydateparser)

抛出此错误:

ValueError: Missing column provided to 'parse_dates': 'day, hour, month, year'

有人可以帮助我理解为什么我会收到此错误

1 个答案:

答案 0 :(得分:1)

尝试将其作为dict或列表列表传递

dataset = pd.read_csv("raw.csv", parse_dates={'date':['year', 'month', 'day',
'hour']}, index_col = 1, date_parser=dateparser)

dataset = pd.read_csv("raw.csv", parse_dates=[['year', 'month', 'day',
'hour']], index_col = 1, date_parser=dateparser)

PS:无法重现相同的错误,但是建议的解决方案应该可以正常工作。