使用出生日期计算年龄变量

时间:2018-11-05 06:14:23

标签: python

我有一个数据框,该数据框具有出生日期变量,我需要使用python根据给定时间段的出生日期变量来计算年龄。请建议

示例

   DOB         AGE    TIME PERIOD 
31-12-1990     28     01-02-2017
01-01-1987     32     01-02-2017
12-07-1992     26     01-02-2017

我需要“年龄”列中所有行的值。

1 个答案:

答案 0 :(得分:0)

为什么不pandas

import pandas as pd
df=pd.read_csv(filename)
df['DOB']=pd.to_datetime(df['DOB'])
df['TIME PERIOD']=pd.to_datetime(df['TIME PERIOD'])
df.insert(1,'AGE',(df['TIME PERIOD']-df['DOB']).astype('<m8[Y]').astype(int))
print(df)

输出:

         DOB  AGE TIME_PERIOD
0 1990-12-31   26  2017-01-02
1 1987-01-01   30  2017-01-02
2 1992-12-07   24  2017-01-02

但是您会考虑为什么我的代码中的年龄是不正确的,但是实际上,如果您考虑一下,我的代码是正确的,因此也可以解决此问题。