array a[n] b[n]; *n是你的60多个变量数;
if _n_=6;
do i= 1 to n;
if a[i]>1.5 then
b[i]=vname(a(i));
end;
然后把b[i]的值select into 宏separated by空格就好。
后面修改dataset,keep宏。
你发的这个里是me-ivc_6 四个变量需要检测,假设取第六行看值是不是大于1.6,代码如下:
data a;
set test;
if _n_=6;
array a[*] me--ivc_6;
array b[4] $;
do i=1 to dim(a);
if a[i]>1.6 then
b[i]=vname(a[i]);
end;
keep b:;
run;
proc transpose data=a out=b;
var b1-b4;
run;
proc sql;
select col1 into : vname separated by ' ' from b;
quit;