Python 3.x 使用datetime库获取当前年龄

Python 3.x 使用datetime库获取当前年龄,python-3.x,pandas,datetime,Python 3.x,Pandas,Datetime,我有一列datetime64[ns]格式的用户的DOB数据,我想计算他们当前的年龄。每次我解析这个日期并尝试用当前日期减去它时,就会抛出一个str错误和datetime数据格式无效 from datetime import datetime main_file['AD_DOB'] = pd.to_datetime(main_file['AD_DOB']).dt.date ##10/2/1943 now = datetime.now().strftime("%H:%M:%S") main_file

我有一列datetime64[ns]格式的用户的DOB数据,我想计算他们当前的年龄。每次我解析这个日期并尝试用当前日期减去它时,就会抛出一个str错误和datetime数据格式无效

from datetime import datetime
main_file['AD_DOB'] = pd.to_datetime(main_file['AD_DOB']).dt.date ##10/2/1943
now = datetime.now().strftime("%H:%M:%S")
main_file['Age'] = ((now - main_file['AD_DOB'])/365).dt.days

错误:TypeError:-:“str”和“datetime.date”不支持的操作数类型

这是因为
datetime.now().strftime(“%H:%M:%s”)返回字符串对象

以下内容应该有效:

now = datetime.now()
main_file['Age'] = (now - main_file['AD_DOB']).days/365.0

这是因为
datetime.now().strftime(“%H:%M:%s”)
返回一个字符串对象

以下内容应该有效:

now = datetime.now()
main_file['Age'] = (now - main_file['AD_DOB']).days/365.0
试试这个

from datetime import datetime
main_file['AD_DOB'] = pd.to_datetime(main_file['AD_DOB']).dt.date ##10/2/1943
now = datetime.datetime.now()
main_file['Age'] = ((now - main_file['AD_DOB'])/365).dt.days
试试这个

from datetime import datetime
main_file['AD_DOB'] = pd.to_datetime(main_file['AD_DOB']).dt.date ##10/2/1943
now = datetime.datetime.now()
main_file['Age'] = ((now - main_file['AD_DOB'])/365).dt.days

对于熊猫中的减法是必要的,将值转换为日期时间,如果要删除时间,请使用
AD_DOB
列,也可以使用
now


对于熊猫中的减法是必要的,将值转换为日期时间,如果要删除时间,请使用
AD_DOB
列,也可以使用
now


仍然引发错误:TypeError:-:“datetime.datetime”和“datetime.date”的操作数类型不受支持。然而,它与另一个解决方案配合得很好。无论如何谢谢你!仍然引发错误:TypeError:-:“datetime.datetime”和“datetime.date”的操作数类型不受支持。然而,它与另一个解决方案配合得很好。无论如何谢谢你!它运行在最新版本0.25.3上。它运行在最新版本0.25.3上。