将日期中的月份转换为熊猫中相应的数字

问题描述

我有一列由日期组成

df=pd.DataFrame({'Date':['1 June'13','1 Nov'15','1 Dec'20']})
日期
13 年 6 月 1 日
2015 年 11 月 1 日
20 年 12 月 1 日

我想将此日期转换为这种格式-

1-06-2013

我尝试过的-

df['Date']=pd.to_datetime(df['Date']).dt.strftime('%d-%b-%y')

我得到了什么-

2013 年 6 月 1 日

有没有什么办法用一个小而简单的代码来得到这个o/p 提前致谢!!!

解决方法

您可以使用正确的日期格式代码并使用 Series.str.lstrip 删除零填充来实现它:

pd.to_datetime(df.Date).dt.strftime("%d-%m-%Y").str.lstrip('0')
#0    1-06-2013
#1    1-11-2015
#2    1-12-2020