我有2列,createddate,closeddate,需要创建一个新的列,其中closeddate减去createddate,如果closeddate为null,则用sysdate估算它。
关闭日期和创建日期是datetime 64 [ns]数据类型。下面是示例 Dataframe
``df:
createddate closeddate
30-06-2023 6.21.58 PM 03-07-2023 5.29.44 PM
30-06-2023 6.18.16 PM
Expected output
createddate closeddate Ageing_days
30-06-2023 6.21.58 PM 03-07-2023 5.29.44 PM 3
30-06-2023 6.18.16 PM 18
字符串
我尝试使用下面的代码,但问题是第一行使用下面的代码,它需要2天而不是3天
Tried code:
df['aging_cal'] = (df['ClosedDate'].fillna(datetime.datetime.now()) - df['Created']).dt.days
型
o/p不正确
Expected output
createddate closeddate Ageing_days
30-06-2023 6.21.58 PM 03-07-2023 5.29.44 PM 2
30-06-2023 6.18.16 PM 18
型
不知道上面的代码有什么问题。
2条答案
按热度按时间oaxa6hgo1#
看起来你需要先
ceil
你的Timedelta到一天:字符串
输出量:
型
可再现输入:
型
knsnq2tg2#
如果你想计算diff,而不考虑日期时间的HH:MM:SS部分,那么你可以在减去之前将时间戳转换为日期:
字符串
输出量:
型