Python的改变从日/日期格式/ YY到DD /月/年的日期1970年以前

我有一个具有日期列像下面蟒大熊猫数据帧:Python的改变从日/日期格式/ YY到DD /月/年的日期1970年以前

'Birth Date' 

0 22/04/73

1 22/03/53

2 22/04/73

3 14/08/77

4 08/05/50

欲这个对象数据类型转换为日期格式,是这样的:1953年4月6日...

我试图转换为datetime数据类型如下:

df['Birth Date']=pandas.to_datetime(df['Birth Date'],format='%d/%m/%y') 

但输出像:

0 1973-04-22 

1 2053-03-22

2 1973-04-22

3 1977-08-14

4 2050-05-08

我怎么得到1953年,1950年等,而不是2053年,2050年?

回答:

您需要通过掩码手动更改年份,例如,多为2017所有年份被100年减去:

df['Birth Date']= pd.to_datetime(df['Birth Date'],format='%d/%m/%y') 

df['Birth Date'] = df['Birth Date'].mask(df['Birth Date'].dt.year > 2017,

df['Birth Date'] - pd.offsets.DateOffset(years=100))

print (df)

Birth Date

0 1973-04-22

1 1953-03-22

2 1973-04-22

3 1977-08-14

4 1950-05-08

以上是 Python的改变从日/日期格式/ YY到DD /月/年的日期1970年以前 的全部内容, 来源链接: utcz.com/qa/262395.html

回到顶部