datetime.now() 和用日期填充的系列之间的 Python 年差异?

Wag*_* R. 6 python datetime series date-difference pandas

我想在我的数据集中创建一个新列,这是今天与数据集中已有的另一列之间的年份差异,填充了日期。

上面的代码:

df['diff_years'] = datetime.today() - df['some_date']
df['diff_years']
Run Code Online (Sandbox Code Playgroud)

给我以下输出(示例):

1754 days 11:44:28.971615
Run Code Online (Sandbox Code Playgroud)

我必须得到类似的东西(意味着上面的输出以年为单位):

4,8 
(or 5)
Run Code Online (Sandbox Code Playgroud)

我感谢任何帮助!

PS。:我想避免循环系列,我相信路径会给我一个想要的解决方案,但由于有一个大系列,我想避免这种方式。

Shu*_*rma 1

几天前,我在项目中遇到了同样的问题,现在我已经尝试过这些,

from dateutil.relativedelta import relativedelta
from datetime import date
now = date.today()
some_date = date(df['some_date'])

rdelta = relativedelta(now, some_date)
print('diff in years - ', rdelta.years)
print('remaining months - ', rdelta.months)
print('remaining days - ', rdelta.days)
Run Code Online (Sandbox Code Playgroud)

它应该打印年份差异