datalog_ret(keep=date);
setstoindiv.a1a0001;
where1995<=year(date)<=2000;
%macro a(x);
data a(keep=dater_1);
setstoindiv.a&x;
where1995<=year(date)<=2000;
r_1=log(clpr)-log(lag(clpr));
clpr_1=clpr*(1+divrat+rigrat+reisvol/lag(shrout))-rigrat-reispr*reisvol/lag(shrout)+divamt;
if clpr_1=. thenclpr_1=clpr;
r_2=log(clpr_1)-log(lag(clpr_1));
if exdt^=. thenr_1=0;
r_1=r_1+r_2;
if r_1=. then r_1=0;
else r_1=r_1;
datalog_ret(rename=(r_1=r&x));
merge log_ret a;
by date;
rr&x=r&x**2;
%mend a;
%a(1a0001);
%a(600652);
run;
这个语句产生了变量R1A0001和r600652提示未初始化,但是程序运行有观测值,这是什么原因呢??