我有一个包含出生年份的 Pandas DataFrame:
Name Birth Year
Joe 2000
Bill 1998
Mike 1996
Frank 1995
我想添加一个名为“DOB”的列,将相同的 MM-DD 添加到出生年份,以便 DataFrame 看起来像:
Name Birth Year DOB
Joe 2000 2000-04-13
Bill 1998 1998-04-13
Mike 1996 1996-04-13
Frank 1995 1995-04-13
错误的是,这是我这样做的尝试:
df['DOB'] = str(df['Birth Year'] + '-' + '04-13').dt.strftime('%y-%m-%d)
关于如何有效地做到这一点有什么建议吗?
请您参考如下方法:
使用to_datetime ,如果您希望列的类型为 DateTime:
df['DOB'] = pd.to_datetime(df['Birth_Year'].astype(str) + '-04-13', format='%Y-%m-%d')
print(df)
输出
Name Birth_Year DOB
0 Joe 2000 2000-04-13
1 Bill 1998 1998-04-13
2 Mike 1996 1996-04-13
3 Frank 1995 1995-04-13
