我正在想創建這樣的數據集,P1_31,P1_32,P1_36,P1_37在SAS使用下面的代碼%DO循環顯示我的錯誤是SAS
%MACRO P_MISS1;
%LET T1= 3 ;
%LET H1=1;
%DO %WHILE(&H1<=1);
%LET TR1=%SCAN(&T1,&H1);
%DO I= 1,2,6 %TO 7;
DATA P1_&TR1&I;
VALUE=.;
COL&TR1=.;
RUN;
OUTPUT;
%END;
%LET H1=%EVAL(&H1+1);
%END;
%MEND P_MISS1;
%P_MISS1
我用很多宏觀的計劃,所有上述數據集,但只是爲了減少我創建下面的代碼的代碼大小。我知道我正在做%Do Loop的問題。如果有可能使用上面的代碼,請引導我使用代碼。
使用%前做我= 1, 2,6%到7,我用%做我= 1,2,6,7。 –
我不認爲宏語言支持任何結構。 (兩者都是數據步驟中的合法結構,但使用它的人會很奇怪,因爲它沒有做任何事情。)我相信宏語言只支持%do x%到y,沒有逗號列表或類似的東西。 – Joe