這裏是我的代碼:
%macro loop;
%let var1=10;
%do %while (&var1.>x);
counter=&var1.;
yy=1/(1+x);
end;
%let var1=%eval(&var1.-1);
%end;
%mend loop;
data tmp;
input x;
datalines;
1
2
3
;
run;
%let num=1;
data y;
set tmp;
%loop;
run;
基本上,我想創建一個變量YY當變量x小於VAR1的價值;
但輸出並沒有給我變量yy。
任何人都可以幫助我嗎?
Thx!
你爲什麼使用宏代碼? – Tom
好問題!因爲我必須這麼做,這是一個非常大的項目中的一個簡單部分,我必須在不更改其他部分的情況下實現這一目標。 –
首先找出你需要運行的代碼。然後找出如何使用宏變量或宏邏輯來生成該代碼。 – Tom