Hi, how about reducing the number of steps (UNION purges duplicate rows by default) ... proc sql noprint; select cats(variable,'=',variable,'_') into :list separated by ' ' from (select variable from x union select variable from y); quit; proc datasets library=work nodetails nolist; modify table; rename &list ; quit; ps ... modified data step (less code, numeric length defaults to 😎 ... data table; infile datalines dsd; input ID :$7. Q1-Q6; datalines; RefID1,0.90,0.80,0.00,0.90,0.00,0.70 RefID2,0.100,0.100,0.00,0.70,0.00,60 RefID3,0.40,0.80,0.00,0.90,0.00,0.50 RefID4,0.55,0.80,0.05,0.90,0.00,0.69 RefID5,0.00,0.80,0.60,0.90,0.20,0.90 RefID6,0.96,0.00,0.40,0.90,0.00,0.95 RefID7,0.00,0.80,0.90,0.90,0.00,0.99 RefID8,0.56,0.80,0.55,0.90,0.00,0.93 RefID9,0.99,0.80,0.99,0.90,0.00,0.70 RefID10,0.89,0.88,0.56,0.90,0.00,0.00 ;
... View more