pandas - 将日期差异与 pandas 时间戳值进行比较
问题描述
我正在尝试根据数据框中的数据年龄(以天为单位)执行特定操作。我正在寻找如下内容:
import pandas as pd
if 10days < (pd.Timestamp.now() - pd.Timestamp(2019, 3, 20)):
print 'The data is older than 10 days'
有什么我可以用或其他方式替换“10days”吗?我可以根据两个时间戳值之间的差异执行操作吗?
解决方案
您正在寻找的是pd.Timedelta('10D')
, pd.Timedelta(10, unit='D')
(or unit='days'
or unit='day'
), or pd.Timedelta(days=10)
。例如,
In [37]: pd.Timedelta(days=10) < pd.Timestamp.now() - pd.Timestamp(2019, 3, 20)
Out[37]: False
In [38]: pd.Timedelta(days=5) < pd.Timestamp.now() - pd.Timestamp(2019, 3, 20)
Out[38]: True