将带有月份和年份("August 2020"...)的列转换为日期时间



我有一个数据帧,它包含一列月和年作为字符串:

>>>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

有关格式代码的更多信息,请访问此处

相关内容

  • 没有找到相关文章

最新更新