考虑这个简单的例子
df = pd.DataFrame({'mydate' : ['1985m3','1985m4','1985m5']})
df
Out[18]:
mydate
0 1985m3
1 1985m4
2 1985m5
如何将这些月度时段转换为正确的datetime
(人为使用该月的第一天,例如第一行为'1985-03-01'
)?
我当然可以删除这个月,并且艰难地但是有更好的pandonic方式吗?
谢谢!
答案 0 :(得分:4)
尝试将pandas.to_datetime
与Python time directives一起使用,其中'%Y'一年,' m'字母m的硬编码,'%m'月份:
pd.to_datetime(df.mydate, format='%Ym%m')
输出:
0 1985-03-01
1 1985-04-01
2 1985-05-01
Name: mydate, dtype: datetime64[ns]