用月份号替换月份名称

时间:2019-08-20 22:13:50

标签: pandas datetime replace

我有一列名为“ date”的对象数据类型为(pandas),如下所示:

Apr-12
Apr-12
Mar-12
Apr-12
Apr-12

名称:日期,dtype:对象

我想以相同格式替换此列,例如以下格式

04/12
04/12
03/12
04/12
04/12

名称:日期,dtype:对象

2 个答案:

答案 0 :(得分:0)

您可以尝试执行此操作,但是我不确定是否可以使用。让我知道该错误,还请邮政编码以生成此类数据框。

from datetime import datetime
df['month'] = df['date'].apply(lambda x: pd.Timestamp(datetime.strptime(x,'%b-%d')).month)

编辑: 我检查了一下,它有效。同样,您可以对年份进行设置,然后获取所需的格式

Edit2:  我通过创建一个演示数据框来运行以下代码,它可以正常工作。您可以尝试打印月份列

from datetime import datetime
df = pd.DataFrame(data={'date':['Apr-12','Mar-13']})
df['month'] = df['date'].apply(lambda x: pd.Timestamp(datetime.strptime(x,'%b-%d')).month)

答案 1 :(得分:0)

您可以使用to_datetime

进行检查
pd.to_datetime(df.date,format='%b-%d').dt.strftime('%m/%d')
Out[405]: 
0    04/12
1    03/12
2    04/12
3    04/12
Name: date, dtype: object
#df.date = pd.to_datetime(df.date,format='%b-%d').dt.strftime('%m/%d')