【发布时间】:2020-04-25 08:08:45
【问题描述】:
我有一种情况,我需要计算员工在 X 公司的任期(以年为单位)。数据格式如下:
df =
EID Event_Name Event_Date
1 Hired 03/09/1990 00:00:00
1 Terminated 14/10/2005 00:00:00
1 Rehired 02/11/2015 00:00:00
2 Hired 03/10/1990 00:00:00
2 Terminated 15/10/2005 00:00:00
任期计算很容易理解:
首先计算 Hired 和 Terminated 之间的差异 其次计算今天的日期和 Rehired 之间的差异(如果 rehired 适用,则忽略)
示例:对于 EID =1:任期为:
(LAST JOB WORKED WITH COMPANY X) 14/10/2005 00:00:00 - 03/09/1990 00:00:00 = 5520 days
(REHIRED WITH COMP X AND STILL WORKING) 25/04/2020 00:00:00 - 02/11/2015 00:00:00 = 1636 days
总任职天数 = (5520 + 1636)/365 = 19.6 年
其他 EID 也是如此
输出应如下所示:
EID Tenure(Years)
1 19.6
2 15.04
【问题讨论】:
标签: python-3.x pandas datetime date-difference