我计算两个日期之间的四分之一间隔。现在,我要测试四分之一间距是否大于2。
谢谢您的评论!
我实际上正在运行WRDS(沃顿研究数据服务)的代码。下面的fst_vint
是一个带有两个日期变量rdate
和lag_rdate
的DataFrame。第一行似乎将它们转换为四分之一变量(例如9/8/2019
到2019Q1
),然后取它们之间的差,将其存储在新列qtr
中。
fst_vint.qtr >= 2
产生了问题,因为前者是QuarterEnd
对象,而后者是integer
。我该如何处理这个问题?
fst_vint['qtr'] = (fst_vint['rdate'].dt.to_period('Q')-\
fst_vint['lag_rdate'].dt.to_period('Q'))
# label first_report flag
fst_vint['first_report'] = ((fst_vint.qtr.isnull()) | (fst_vint.qtr>=2))
答案 0 :(得分:0)
当列通过.astype(int)转换为整数时,使用.diff()会得到所需的答案。因此,您的情况下的代码将是:
fst_vint['qtr'] = fst_vint['rdate'].astype(int).diff()