So here is one way to get what it looks like you want. Note that I did not output the extra copy of the last row. data junk ; array m $2 m1-m14 ; drop condition offset month i ; do condition = 'A','B','C','D','E','F' ; do offset = '101101','001110','011001' ; do month = 1 to dim(m) ; i = 1 + mod(month,length(offset)) ; m(month) = catt(condition,tranwrd(substr(offset,i,1),'0',' ')); end; output; end; end; run; proc print; run;
... View more