如何在Python中把日期转换为不同的格式来计算年龄[重复]。

问题描述 投票:-1回答:1

我有一个数据框df,其中的DOB(出生日期)的格式为 "Year-Month-Day (1994-01-01)" 而DOB变量是一个对象.我需要用这个DOB变量给每个人分配年龄。我注意到我需要使用 datetime 来查找年龄,我需要将格式转换为 "Year/Month/Day (1994/01/01)" 首先。

不知道有没有人可以帮忙。

谢谢!我有一个dataframe df,里面有一个DOB(出生日期),格式是 "年-月-日",DOB变量是一个对象。

python datetime formatting data-conversion
1个回答
0
投票
now = pd.Timestamp('now')
df['dob'] = pd.to_datetime(df['dob'])  
df['age'] = (now - df['dob']).astype('<m8[Y]')    
print(df)

将你的str变量覆盖到日期时间对象中

你可以从现在开始减去dob,得到timedelta64[ns]。要将其转换为年数,使用 astype(')

为你最后的格式化

df['dob'].apply(lambda x: x.strftime('%Y/%m/%d'))

© www.soinside.com 2019 - 2024. All rights reserved.