Try this!!! Try this !!!!! Options missing = 0; proc report data = class out =x ; Column name sex; define sex / across ; run; %macro s(); Proc SQL; select count(distinct sex) into : s from class; Proc SQL; select distinct sex into : s2-:s%sysfunc(trim(%eval(&amp;s1))) from class order by sex ;</p><p>Data y (drop =_BREAK_);</p><p>Set x;</p><p>%do I = 1 %to %eval(&amp;s1); rename c&amp;i. = &amp;&amp;s&amp;i.; %end; run; %mend ; %s(); correct one !! options missing=0; proc report data= class out=x ; column name sex; define sex / across ; run; options symbolgen; %macro s(); proc sql; select count(distinct sex) into : s from class; proc sql; select distinct sex into :s2-:s%sysfunc(trim(%eval(&s+1))) from class order by sex ; data y (drop=_BREAK_); set x; %do i = 1 %to %eval(&s+1); rename c&i. = &&s&i.; %end; run; %mend; %s();
... View more