|
楼主
楼主 |
发表于 2004-4-10 22:56:12
|
只看该作者
利用宏生成新变量
[size=100:53901]现有两数据集x1,x2, 其中x1中有变量cov2_sum, cov3_sum,.....,cov90_sum等,x2中有变量rv2,rv3,......,rv90等. 现在要生成一新的变量corr2,corr3,......,corr90, 计算规则如:corr2=cov2_sum/rv2,其它的类似.
借用zibao在删除变量一贴中的思路,
%macro corrvar;
%do i=1 %to 9;
%do j=1 %to 10;
%if &i.<&j. %then
corr%eval(10*(&i.-1)+&j.)=cov%eval(10*(&i.-1)+&j.)_sum/rv%eval(10*(&i.-1)+&j.));
%end;
%end;
%mend corrvar;
data corr1;
merge x1 x2;
by y m d ;
%corrvar;
run;
log窗口提示出错:Line generated by the macro function "J"
请问有何办法解决?[/size:53901] |
|