이에 대한 한 가지 방법은 매크로 변수를 사용하는 것입니다.
%let varlist = x1 x2 x3 x4;
proc reg data = somedata outest = out;
model y = &varlist;
run;
quit;
data _null_;
length newvars $ 2000;
set out;
array v{*} &varlist;
do i = 1 to dim(v);
if v[i] ne . then newvars = catx(" ", newvars, vname(v[i]));
end;
call symputx("newvars", newvars);
run;
%put Predictors=&newvars;
proc score data = somedata;
var &newvars;
run;
이렇게하면 PROC REG에서 공백으로 구분 된 예측 변수 목록이 만들어지고 PROC SCORE의 VAR 문에 해당 목록이 사용됩니다. 이 접근 방식은 OUTEST 데이터 세트에 단일 모델 만 있다고 가정합니다. 그러나 실제로 그러한 경우 OUTEST 데이터 세트의 예측 변수에 대한 결 측값이 없어야합니다.
출처
https://stackoverflow.com/questions/22050188