我的数据框的时间由2个coloumns:date
和HrMn
,像这样:熊猫:如何阅读错误的时间数据?
我怎么能读他们进入的时间,绘制时间序列图? (还有其他值列,例如speed
)。
我想我可以逃脱time.strptime('19900125'+'1200','%Y%m%d%H%M')
但问题是,从csv
阅读时,HrMn
在0000
将被解析为0
,所以 time.strptime('19900125'+'0','%Y%m%d%H%M')
将失败。
UPDATE:
我目前的做法:
# When reading the data, pase HrMn as string
df = pd.read_csv(uipath,header=0, skipinitialspace=True, dtype={'HrMn': str})
df['time']=df.apply(lambda x:datetime.strptime("{0} {1}".format(x['date'],x['HrMn']), "%Y%m%d %H%M"),axis=1)# df.temp_date
df.index= df['time']
# Then parse it again as int
df['HrMn'] = df['HrMn'].astype(int)
我认为,如果你这样做只会工作:'DF = pd.read_csv(uipath,头= 0,skipinitialspace =真,parse_dates = [ '时间', 'HRMN'])' – EdChum