policy.Exposure.fillna(pd.to_datetime(2016,12,31) - policy.EnrollDate,inplace=True)


我想用2016、12、31-EnrollDate列的日差填充“暴露”列的缺失值。我该怎么写?

所有类似的问题都是从另一列中减去一列,而不是从特定日期开始。
python - 从 Pandas 的日期栏中查找特定日期的日期差-LMLPHP

我使用CancelDate-EnrollDate创建了Exposure列。然后,由于存在其中CancelDate为NaT的行,因此我在Expousre中的列为NaN。因此,我尝试使用2016,12,31-EnrollDate填充暴露列中的缺失值。然后将列中的值转换为

policy['Exposure'] = policy.Exposure.dt.days


有没有更简单的方法可以做到这一点?如添加条件:
如果CancelDate.notnull():曝光= CancelDate-注册
否则:曝光= 2016-12-31-报名

最佳答案

您可以用NaT填充这些pd.Series.fillna值,然后减去。

dt = pd.to_datetime('2016/12/31', format='%Y/%m/%d')
policy['Exposure'] = (policy.CancelDate.fillna(dt) - policy.EnrollDate).dt.days

关于python - 从 Pandas 的日期栏中查找特定日期的日期差,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/46136411/

10-11 09:11