有一个个股研究要对每个个股每年的数据进行回归并对回归系数做一些处理。由于要满足每一次回归的数据个数要大于比如60个,再加上各个股票上市的年份也不同,所以对每个股票来说年份起点可能不同,而且可能不连续(比如1995 1996 1998...如果1997交易数据个数小于60)
我设计了嵌套的循环语句,
foreach y of numlist 000002 000003 ....{
keep if stockcode==`y'
...
foreach z of numlist 1993 1994 1995 1996 ....2016{
keep if year==`z'
tsset TS (一个日变量)
reg ....
}
}
问题就在于如果股票A没有对应的年份比如1997,keep if year==`z'就会删掉所有数据。怎样可以实现如果碰到这种情况就进入下一个年份?或者怎么用条件语句表示no observations的情况?
谢谢大家!