<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: transpose info in SAS Data Management</title>
    <link>https://communities.sas.com/t5/SAS-Data-Management/transpose-info/m-p/182314#M3689</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thanks a lot&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Davide&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Mon, 01 Sep 2014 16:11:17 GMT</pubDate>
    <dc:creator>davide</dc:creator>
    <dc:date>2014-09-01T16:11:17Z</dc:date>
    <item>
      <title>transpose info</title>
      <link>https://communities.sas.com/t5/SAS-Data-Management/transpose-info/m-p/182310#M3685</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;i need to transpose 3 variables by 1 key&lt;/P&gt;&lt;P&gt;the only one way that i thought if to make 3 proc transpose and after merge the 3 data set togheter&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;but i think that exist something easier, can u help me?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;this is an example of the data that i m managing&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;col1 col2 col3 col4&lt;/P&gt;&lt;P&gt;A 2014 N 0&lt;/P&gt;&lt;P&gt;A 2013 X 1&lt;/P&gt;&lt;P&gt;A 2012 N 0&lt;/P&gt;&lt;P&gt;A 2011 X 2&lt;/P&gt;&lt;P&gt;B 2013 X 5&lt;/P&gt;&lt;P&gt;B 2012 X 0&lt;/P&gt;&lt;P&gt;B 2011 N 1&lt;/P&gt;&lt;P&gt;B 2010 N 0&lt;/P&gt;&lt;P&gt;...&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;what i would create is :&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;A 2014 N 0 2013 X 1 2012 N 0 2011 X 2&lt;/P&gt;&lt;P&gt;B&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2013 X 5 2012 X 0 2011 N 1 2010 N 0&lt;/P&gt;&lt;P&gt;...&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;thanks&lt;/P&gt;&lt;P&gt;Davide&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 01 Sep 2014 12:34:20 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Data-Management/transpose-info/m-p/182310#M3685</guid>
      <dc:creator>davide</dc:creator>
      <dc:date>2014-09-01T12:34:20Z</dc:date>
    </item>
    <item>
      <title>Re: transpose info</title>
      <link>https://communities.sas.com/t5/SAS-Data-Management/transpose-info/m-p/182311#M3686</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Yep, transpose and merge.&amp;nbsp; You could also do it with retained arrays and output last from group:&lt;/P&gt;&lt;P&gt;data have;&lt;/P&gt;&lt;P&gt;&amp;nbsp; attrib col1 col2 col3 col4 format=$20.;&lt;/P&gt;&lt;P&gt;&amp;nbsp; infile datalines;&lt;/P&gt;&lt;P&gt;&amp;nbsp; input col1 $ col2 $ col3 $ col4 $;&lt;/P&gt;&lt;P&gt;datalines;&lt;/P&gt;&lt;P&gt;A 2014 N 0&lt;/P&gt;&lt;P&gt;A 2013 X 1&lt;/P&gt;&lt;P&gt;A 2012 N 0&lt;/P&gt;&lt;P&gt;A 2011 X 2&lt;/P&gt;&lt;P&gt;B 2013 X 5&lt;/P&gt;&lt;P&gt;B 2012 X 0&lt;/P&gt;&lt;P&gt;B 2011 N 1&lt;/P&gt;&lt;P&gt;B 2010 N 0&lt;/P&gt;&lt;P&gt;;&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;P&gt;data want (drop=ind j;&lt;/P&gt;&lt;P&gt;&amp;nbsp; set have;&lt;/P&gt;&lt;P&gt;&amp;nbsp; array results{4,3} $200.;&amp;nbsp;&amp;nbsp; /* Assuming a 4*3 grid */&lt;/P&gt;&lt;P&gt;&amp;nbsp; array dat{3} col2-col4;&lt;/P&gt;&lt;P&gt;&amp;nbsp; by col1;&lt;/P&gt;&lt;P&gt;&amp;nbsp; retain ind results1-results12;&lt;/P&gt;&lt;P&gt;&amp;nbsp; if first.col1 then ind=1;&lt;/P&gt;&lt;P&gt;&amp;nbsp; do j=1 to 3;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; results{ind,j}=dat{j};&lt;/P&gt;&lt;P&gt;&amp;nbsp; end;&lt;/P&gt;&lt;P&gt;&amp;nbsp; ind=ind+1;&lt;/P&gt;&lt;P&gt;&amp;nbsp; if last.col1 then output;&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 01 Sep 2014 12:50:30 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Data-Management/transpose-info/m-p/182311#M3686</guid>
      <dc:creator>RW9</dc:creator>
      <dc:date>2014-09-01T12:50:30Z</dc:date>
    </item>
    <item>
      <title>Re: transpose info</title>
      <link>https://communities.sas.com/t5/SAS-Data-Management/transpose-info/m-p/182312#M3687</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Assuming the data is sorted upon col1:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data have;&lt;BR /&gt;input col1 $ col2 col3 $ col4;&lt;BR /&gt;datalines;&lt;BR /&gt;A 2014 N 0&lt;BR /&gt;A 2013 X 1&lt;BR /&gt;A 2012 N 0&lt;BR /&gt;A 2011 X 2&lt;BR /&gt;B 2013 X 5&lt;BR /&gt;B 2012 X 0&lt;BR /&gt;B 2011 N 1&lt;BR /&gt;B 2010 N 0&lt;BR /&gt;;&lt;BR /&gt;run;&lt;/P&gt;&lt;P&gt;proc sql noprint;&lt;BR /&gt;select min(col2), max(col2)&lt;BR /&gt;into :miny, :maxy from have;&lt;BR /&gt;quit;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data want;&lt;/P&gt;&lt;P&gt;array vars2{&amp;amp;miny:&amp;amp;maxy} y%sysfunc(strip(&amp;amp;miny))-y%sysfunc(strip(&amp;amp;maxy));&lt;BR /&gt;array vars3{&amp;amp;miny:&amp;amp;maxy} $ z%sysfunc(strip(&amp;amp;miny))-z%sysfunc(strip(&amp;amp;maxy));&lt;BR /&gt;array vars4{&amp;amp;miny:&amp;amp;maxy} w%sysfunc(strip(&amp;amp;miny))-w%sysfunc(strip(&amp;amp;maxy));&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;do until (last.col1);&lt;BR /&gt; set have;&lt;BR /&gt; by col1;&lt;BR /&gt; vars2{col2}=col2;&lt;BR /&gt; vars3{col2}=col3;&lt;BR /&gt; vars4{col2}=col4;&lt;BR /&gt;end;&lt;/P&gt;&lt;P&gt;drop col2-col4;&lt;BR /&gt;run;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 01 Sep 2014 14:30:30 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Data-Management/transpose-info/m-p/182312#M3687</guid>
      <dc:creator>Loko</dc:creator>
      <dc:date>2014-09-01T14:30:30Z</dc:date>
    </item>
    <item>
      <title>Re: transpose info</title>
      <link>https://communities.sas.com/t5/SAS-Data-Management/transpose-info/m-p/182313#M3688</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;How about this :&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;data have;
&amp;nbsp; attrib col1 col2 col3 col4 format=$20.;
&amp;nbsp; infile datalines;
&amp;nbsp; input col1 $ col2 $ col3 $ col4 $;
datalines;
A 2014 N 0
A 2013 X 1
A 2012 N 0
A 2011 X 2
B 2013 X 5
B 2012 X 0
B 2011 N 1
B 2010 N 0
;
run;

proc sql;
create table temp as
 select b.*,col3,col4 
&amp;nbsp; from have&amp;nbsp; a right&amp;nbsp; join (select * from (select distinct col1 from have),(select distinct col2 from have)&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;) b
&amp;nbsp;&amp;nbsp; on a.col1=b.col1 and a.col2=b.col2;
quit;

data temp;
 set temp;
 by col1;
 if first.col1 then n=0;
 n+1;
run;
data _null_;
 set temp(keep=col1 n) end=last;
 if _n_ eq 1 then call execute('data want(drop=n);merge ');
 call execute('temp(where=(col1="'||strip(col1)||'" and n='||strip(n)||') rename=(col2=col2'||strip(n)||' col3=col3'||strip(n)||' col4=col4'||strip(n)||'))');
 if last then call execute(';by col1;run;');
run;
&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Xia Keshan&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 01 Sep 2014 14:53:21 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Data-Management/transpose-info/m-p/182313#M3688</guid>
      <dc:creator>Ksharp</dc:creator>
      <dc:date>2014-09-01T14:53:21Z</dc:date>
    </item>
    <item>
      <title>Re: transpose info</title>
      <link>https://communities.sas.com/t5/SAS-Data-Management/transpose-info/m-p/182314#M3689</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thanks a lot&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Davide&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 01 Sep 2014 16:11:17 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Data-Management/transpose-info/m-p/182314#M3689</guid>
      <dc:creator>davide</dc:creator>
      <dc:date>2014-09-01T16:11:17Z</dc:date>
    </item>
    <item>
      <title>Re: transpose info</title>
      <link>https://communities.sas.com/t5/SAS-Data-Management/transpose-info/m-p/182315#M3690</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I'm a little late to the party, but here's another one. I'm not that good with arrays, so the fourth step can probably be tidied up.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Tom&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data have;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; input col1 $ col2 col3 $ col4;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; cards;&lt;BR /&gt;A 2014 N 0&lt;BR /&gt;A 2013 X 1&lt;BR /&gt;A 2012 N 0&lt;BR /&gt;A 2011 X 2&lt;BR /&gt;B 2013 X 5&lt;BR /&gt;B 2012 X 0&lt;BR /&gt;B 2011 N 1&lt;BR /&gt;B 2010 N 0&lt;BR /&gt;run;&lt;/P&gt;&lt;P&gt;data inter1;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; set have;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; dataval = catx('09'x, put(col2,4.), col3, put(col4, 1.));&lt;BR /&gt;&amp;nbsp;&amp;nbsp; keep col1 col2 dataval;&lt;BR /&gt;run;&lt;/P&gt;&lt;P&gt;proc transpose data=inter1 out=inter2(drop=_name_) prefix=In;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; by col1;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; id col2;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; var dataval;&lt;BR /&gt;run;&lt;/P&gt;&lt;P&gt;data want;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; array InVars $&amp;nbsp; In2014 In2013 In2012 In2011 In2010;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; array OutYears&amp;nbsp; Yr2014 Yr2013 Yr2012 Yr2011 Yr2010;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; array OutC3&amp;nbsp; $&amp;nbsp; C32014 C32013 C32012 C32011 C32010;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; array OutC4&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; C42014 C42013 C42012 C42011 C42010;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; set inter2;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; do _i = 1 to 5;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; OutYears(_i) = scan(InVars(_i), 1, '09'x);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; OutC3(_i) = scan(InVars(_i), 2, '09'x);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; OutC4(_i) = scan(InVars(_i), 3, '09'x);&lt;BR /&gt;&amp;nbsp;&amp;nbsp; end;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; drop In2014-In2010 _i;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; output;&lt;BR /&gt;run;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 03 Sep 2014 20:01:21 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Data-Management/transpose-info/m-p/182315#M3690</guid>
      <dc:creator>TomKari</dc:creator>
      <dc:date>2014-09-03T20:01:21Z</dc:date>
    </item>
    <item>
      <title>Re: transpose info</title>
      <link>https://communities.sas.com/t5/SAS-Data-Management/transpose-info/m-p/182316#M3691</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Did you know that you can have descending "Numbered Range Lists".&lt;/P&gt;&lt;DIV style="font-family: Courier New; font-size: 11pt;"&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;array&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt; InVars $&amp;nbsp; In2014-In2010;&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;array&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt; OutYears&amp;nbsp; Yr2014-Yr2010;&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;array&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt; OutC3&amp;nbsp; $&amp;nbsp; C32014-C32010;&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="color: #0000ff; background-color: #ffffff;"&gt;array&lt;/SPAN&gt;&lt;SPAN style="color: #000000; background-color: #ffffff;"&gt; OutC4&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; C42014-C42010;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 03 Sep 2014 21:36:16 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Data-Management/transpose-info/m-p/182316#M3691</guid>
      <dc:creator>data_null__</dc:creator>
      <dc:date>2014-09-03T21:36:16Z</dc:date>
    </item>
    <item>
      <title>Re: transpose info</title>
      <link>https://communities.sas.com/t5/SAS-Data-Management/transpose-info/m-p/182317#M3692</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;If you download the free macro at &lt;A href="http://www.sascommunity.org/wiki/A_Better_Way_to_Flip_(Transpose)_a_SAS_Dataset" title="http://www.sascommunity.org/wiki/A_Better_Way_to_Flip_(Transpose)_a_SAS_Dataset"&gt;A Better Way to Flip (Transpose) a SAS Dataset - sasCommunity&lt;/A&gt;, here is a really easy line of code that will solve your problem:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;%transpose(data=have, out=want, by=col1, delimiter=_, var=col2-col4)&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 04 Sep 2014 04:37:45 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Data-Management/transpose-info/m-p/182317#M3692</guid>
      <dc:creator>art297</dc:creator>
      <dc:date>2014-09-04T04:37:45Z</dc:date>
    </item>
    <item>
      <title>Re: transpose info</title>
      <link>https://communities.sas.com/t5/SAS-Data-Management/transpose-info/m-p/182318#M3693</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Arthur.T ,&lt;/P&gt;&lt;P&gt;Did you check the OP's output closely ? He asked a totally different layout :&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;A 2014 N 0&amp;nbsp;&amp;nbsp;&amp;nbsp; 2013 X 1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2012 N 0&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2011 X 2&lt;/P&gt;&lt;P style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;B&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2013 X 5&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2012 X 0&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2011 N 1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2010 N 0&lt;/P&gt;&lt;P style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;&lt;/P&gt;&lt;P style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;They are all in wrong place with its original positon .Sorry, I am afraid that our macro wouldn't work for this scenario .&lt;/P&gt;&lt;P style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;&lt;/P&gt;&lt;P style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;Xia Keshan&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 04 Sep 2014 12:40:11 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Data-Management/transpose-info/m-p/182318#M3693</guid>
      <dc:creator>Ksharp</dc:creator>
      <dc:date>2014-09-04T12:40:11Z</dc:date>
    </item>
    <item>
      <title>Re: transpose info</title>
      <link>https://communities.sas.com/t5/SAS-Data-Management/transpose-info/m-p/182319#M3694</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;A __default_attr="645292" __jive_macro_name="user" class="jive_macro jive_macro_user" data-objecttype="3" href="https://communities.sas.com/"&gt;&lt;/A&gt;: I missed the part about the variable ordering, but I still think it would work and be the easiest to understand.&amp;nbsp; How about:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data order;&lt;/P&gt;&lt;P&gt;&amp;nbsp; informat col2 $20.;&lt;/P&gt;&lt;P&gt;&amp;nbsp; format col2 $20.;&lt;/P&gt;&lt;P&gt;&amp;nbsp; input col2 order;&lt;/P&gt;&lt;P&gt;&amp;nbsp; cards;&lt;/P&gt;&lt;P&gt;2014&amp;nbsp;&amp;nbsp; 1&lt;/P&gt;&lt;P&gt;2013&amp;nbsp;&amp;nbsp; 2&lt;/P&gt;&lt;P&gt;2011&amp;nbsp;&amp;nbsp; 3&lt;/P&gt;&lt;P&gt;2010&amp;nbsp;&amp;nbsp; 4&lt;/P&gt;&lt;P&gt;;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;%transpose(data=have, out=want, by=col1, id=col2, delimiter=_,&lt;/P&gt;&lt;P&gt; var=col2-col4, preloadfmt=order)&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 04 Sep 2014 13:00:25 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Data-Management/transpose-info/m-p/182319#M3694</guid>
      <dc:creator>art297</dc:creator>
      <dc:date>2014-09-04T13:00:25Z</dc:date>
    </item>
    <item>
      <title>Re: transpose info</title>
      <link>https://communities.sas.com/t5/SAS-Data-Management/transpose-info/m-p/182320#M3695</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Yeah. But you need to make a ORDER dataset firstly right ?&lt;/P&gt;&lt;P&gt;BTW, your colleague Peter.E is now in Beijing,China .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Xia Keshan&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 04 Sep 2014 13:33:09 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Data-Management/transpose-info/m-p/182320#M3695</guid>
      <dc:creator>Ksharp</dc:creator>
      <dc:date>2014-09-04T13:33:09Z</dc:date>
    </item>
    <item>
      <title>Re: transpose info</title>
      <link>https://communities.sas.com/t5/SAS-Data-Management/transpose-info/m-p/182321#M3696</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Arthur.T , &lt;/P&gt;&lt;P&gt;Sorry, I think again, Yours might be more simple and easy to understand for OP .&lt;/P&gt;&lt;P&gt;and more important thing is OP don't need to understand how these SAS code work, Macro is good for him .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;P&gt;Xia Keshan&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 04 Sep 2014 14:26:11 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Data-Management/transpose-info/m-p/182321#M3696</guid>
      <dc:creator>Ksharp</dc:creator>
      <dc:date>2014-09-04T14:26:11Z</dc:date>
    </item>
    <item>
      <title>Re: transpose info</title>
      <link>https://communities.sas.com/t5/SAS-Data-Management/transpose-info/m-p/182322#M3697</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;A __default_attr="645292" __jive_macro_name="user" class="jive_macro jive_macro_user" data-objecttype="3" href="https://communities.sas.com/"&gt;&lt;/A&gt;: I made it even easier by adding a descendingid parameter to the macro.&amp;nbsp; Now the OP can obtain the file by running:&lt;/P&gt;&lt;P&gt;%transpose(data=have, out=want, by=col1, id=col2, delimiter=_, &lt;SPAN style="font-size: 10pt; line-height: 1.5em;"&gt;var=col2-col4, descendingid=yes)&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The updated macro is available at the usual place, namely &lt;A href="http://www.sascommunity.org/wiki/A_Better_Way_to_Flip_(Transpose)_a_SAS_Dataset" title="http://www.sascommunity.org/wiki/A_Better_Way_to_Flip_(Transpose)_a_SAS_Dataset"&gt;A Better Way to Flip (Transpose) a SAS Dataset - sasCommunity&lt;/A&gt;. However, if you've already downloaded the macro from there, you'll probably have to refresh your browser screen after clicking on the link for the code and/or paper.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The preloadfmt parameter is still useful as it can deal with something like the following where you want direct control over the ordering of id values. In the case below I wanted them in the Tom, Dick, Harry order :&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data have;&lt;/P&gt;&lt;P&gt;&amp;nbsp; informat name $5.;&lt;/P&gt;&lt;P&gt;&amp;nbsp; format name $5.;&lt;/P&gt;&lt;P&gt;&amp;nbsp; input year name height weight;&lt;/P&gt;&lt;P&gt;&amp;nbsp; cards;&lt;/P&gt;&lt;P&gt;2013 Dick 6.1 185&lt;/P&gt;&lt;P&gt;2013 Tom&amp;nbsp; 5.8 163&lt;/P&gt;&lt;P&gt;2013 Harry 6.0 175&lt;/P&gt;&lt;P&gt;2014 Dick 6.1 180&lt;/P&gt;&lt;P&gt;2014 Tom&amp;nbsp; 5.8 160&lt;/P&gt;&lt;P&gt;2014 Harry 6.0 195&lt;/P&gt;&lt;P&gt;;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data order;&lt;/P&gt;&lt;P&gt;&amp;nbsp; informat name $5.;&lt;/P&gt;&lt;P&gt;&amp;nbsp; format name $5.;&lt;/P&gt;&lt;P&gt;&amp;nbsp; input name order;&lt;/P&gt;&lt;P&gt;&amp;nbsp; cards;&lt;/P&gt;&lt;P&gt;Tom&amp;nbsp;&amp;nbsp; 1&lt;/P&gt;&lt;P&gt;Dick&amp;nbsp; 2&lt;/P&gt;&lt;P&gt;Harry 3&lt;/P&gt;&lt;P&gt;;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;%transpose(data=have, out=want, by=year, id=name,&lt;/P&gt;&lt;P&gt; delimiter=_, var=height weight, var_first=no, preloadfmt=order)&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 04 Sep 2014 14:43:19 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Data-Management/transpose-info/m-p/182322#M3697</guid>
      <dc:creator>art297</dc:creator>
      <dc:date>2014-09-04T14:43:19Z</dc:date>
    </item>
  </channel>
</rss>

