下面是一个示例熊猫数据框的示例,我正在尝试查找两行中日期之间的差异(以日期最少的行为基础,在本例中为第二行)。 2个日期之间的差大于90天,因此我期望2行都为“ false”。但是由于某种原因,结果看起来有所不同。
PH_number date Type
H09879721 2018-10-29 AccountHolder
H09879731 2018-07-24 AccountHolder
Code:
print(df.date.diff()<=pd.Timedelta(90,'d'))
Current Result:
False
True
Expected Result:
False
False
任何建议将不胜感激。
答案 0 :(得分:0)
使用abs
可以在差异为负数时小心:
df.date.diff().abs().dt.days.le(90)
或者:
df.date.diff().abs()<=pd.Timedelta(90,'d')
或者:
df.date.diff().abs().le(pd.Timedelta(90,'d'))
或者:
0 False
1 False
Name: date, dtype: bool
Access-Control-Allow-Origin: *