想得到每个上市公司每年度分析师人数,用的以下代码:
sort stkcd year 证券公司ID
gen t = _n
gen number=1 if 证券公司ID!=证券公司ID[_n-1]
replace number=0 if number==.
bys stkcd year:egen 分析师追踪人数=sum(number)
但存在券商发布每个公司的报告 公布日和终止日之间的时间跨度不一致的问题。比如一个报告的公布日为2007-10-30,终止日2009-12-31,那么应视为该证券公司在2007年、2008年、2009年三年均追踪了某一上市公司。以上代码的计算方式只考虑了报告发布当年有多少分析师追踪,向大家请教:正确的代码应是怎样的?
数据如下: