我是sas新手,正在学习怎样用sas做car值(市场调整法)。在选取事件日前后三天(包括事件日一共七天)的数据这一步,有一些疑问请求大神帮帮忙~在已有参考程序中,它的思路是将日期转换成数值型后减去事件日得出一个新的变量,然后选择该变量取值为-3~3的样本作为事件日前后三天的数据。假设事件日是2013年2月1日,程序如下:
data b;set a;
t=tr_date-20130201;
run;
data c;set b;
if t>3 or t<-3 then delete;
run;
那么,现在问题来了
如果有公司i在正好这几天内某一天停牌了,那么i剩下的数据就只有5天的,这样子最后计算的结果肯定是有问题的。
我现在的想法是把t按正负分成两个文件然后去count前三个(或者4个),再合并,程序如下:data b;
set a;
by stkcd;
if first.stkcd then count=0;
count+1;
if count < = 3 then output;
else delete;
run;
想请教一下论坛里的牛人们有没有更好更简单的办法呢~感谢!