我有一个数据帧,它包含一列月和年作为字符串:
>>>time index value
January 2021 y 5
January 2021 v 8
May 2020 y 25
June 2020 Y 13
June 2020 x 11
June 2020 v 10
...
我想更改列";时间";转换为日期时间格式,这样我就可以按时间顺序对表格进行排序
当时间是带有月份名称和编号的字符串时,有什么方法可以做到这一点吗
#编辑:当我这样做时:
result_Table['time']=pd.to_datetime(result_Table['time'],format='%Y-%m-%d')
我收到错误:
ValueError:2021年1月的时间数据与指定的格式不匹配
示例数据帧:
df=pd.DataFrame({'time':['January 2021','May 2020','June 2020']})
如果要指定格式参数,则应为'%B %Y'
,而不是'%Y-%m-%d'
:
df['time']=pd.to_datetime(df['time'],format='%B %Y')
#OR
#you can also simply use:
#df['time']=pd.to_datetime(df['time'])
df:的输出
time
0 2021-01-01
1 2020-05-01
2 2020-06-01
有关格式代码的更多信息,请访问此处