data aaa; /*150个变量名abc1-abc150*/
length varnam $10;
do i=1 to 150;
varnam=cats("abc", i);
output;
end;
run;
proc sql noprint;/*150个变量名abc1-abc150存入宏变量varlst*/
select distinct varnam into: varlst separated by " " from aaa;
quit;
%put &=varlst;
data new;/*keep仅保留150个变量名abc1-abc150*/
set rawdata;
keep &varlst.;
run;