<?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 data in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/Transpose-data/m-p/278071#M269709</link>
    <description>&lt;P&gt;if you have more variables to transpose then you could create a macro variable and store all the variable that you need to tranpose.&lt;BR /&gt;something like below,&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;in the below example we are using the &amp;amp;var macro variable with all the variable names separated by space in the var statement.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data have;
input id	company	store	price;
cards;
99	1.0000	1.0000	1.0000
32	1.032	1.0000	1.045
49	1.917	1.306	1.3345
;

proc sql;
select name into: var separated by ' ' from dictionary.columns where libname='WORK' and memname='HAVE' and name ne 'id';
quit;

%put &amp;amp;var;&lt;BR /&gt;&lt;BR /&gt;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;PRE class=" language-sas"&gt;&lt;CODE class="  language-sas"&gt;&lt;SPAN class="token procnames"&gt;proc&lt;/SPAN&gt; &lt;SPAN class="token procnames"&gt;sort&lt;/SPAN&gt; &lt;SPAN class="token procnames"&gt;data&lt;/SPAN&gt;&lt;SPAN class="token operator"&gt;=&lt;/SPAN&gt;have&lt;SPAN class="token punctuation"&gt;;&lt;/SPAN&gt;
&lt;SPAN class="token statement"&gt;by&lt;/SPAN&gt; &lt;SPAN class="token keyword"&gt;id&lt;/SPAN&gt;&lt;SPAN class="token punctuation"&gt;;&lt;/SPAN&gt;
&lt;SPAN class="token procnames"&gt;run&lt;/SPAN&gt;&lt;SPAN class="token punctuation"&gt;;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;proc transpose data=have out=trans(rename=(col1=factor)) name=product; &lt;BR /&gt;by id; &lt;BR /&gt;var &amp;amp;var.; &lt;BR /&gt;run;&lt;/CODE&gt;&lt;/PRE&gt;</description>
    <pubDate>Fri, 17 Jun 2016 01:50:39 GMT</pubDate>
    <dc:creator>Jagadishkatam</dc:creator>
    <dc:date>2016-06-17T01:50:39Z</dc:date>
    <item>
      <title>Transpose data</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Transpose-data/m-p/278055#M269705</link>
      <description>&lt;P&gt;Hi ,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I have a dataset like below&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;TABLE border="0" cellspacing="0" cellpadding="0"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;&lt;FONT color="#000000" face="Calibri" size="3"&gt;id&lt;/FONT&gt;&lt;/TD&gt;&lt;TD&gt;&lt;FONT color="#000000" face="Calibri" size="3"&gt;company&lt;/FONT&gt;&lt;/TD&gt;&lt;TD&gt;&lt;FONT color="#000000" face="Calibri" size="3"&gt;store&lt;/FONT&gt;&lt;/TD&gt;&lt;TD&gt;&lt;FONT color="#000000" face="Calibri" size="3"&gt;price&lt;/FONT&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;FONT color="#000000" face="Calibri" size="3"&gt;99&lt;/FONT&gt;&lt;/TD&gt;&lt;TD&gt;&lt;FONT color="#000000" face="Calibri" size="3"&gt;1.0000&lt;/FONT&gt;&lt;/TD&gt;&lt;TD&gt;&lt;FONT color="#000000" face="Calibri" size="3"&gt;1.0000&lt;/FONT&gt;&lt;/TD&gt;&lt;TD&gt;&lt;FONT color="#000000" face="Calibri" size="3"&gt;1.0000&lt;/FONT&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;FONT color="#000000" face="Calibri" size="3"&gt;32&lt;/FONT&gt;&lt;/TD&gt;&lt;TD&gt;&lt;FONT color="#000000" face="Calibri" size="3"&gt;1.032&lt;/FONT&gt;&lt;/TD&gt;&lt;TD&gt;&lt;FONT color="#000000" face="Calibri" size="3"&gt;1.0000&lt;/FONT&gt;&lt;/TD&gt;&lt;TD&gt;&lt;FONT color="#000000" face="Calibri" size="3"&gt;1.045&lt;/FONT&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;FONT color="#000000" face="Calibri" size="3"&gt;49&lt;/FONT&gt;&lt;/TD&gt;&lt;TD&gt;&lt;FONT color="#000000" face="Calibri" size="3"&gt;1.917&lt;/FONT&gt;&lt;/TD&gt;&lt;TD&gt;&lt;FONT color="#000000" face="Calibri" size="3"&gt;1.306&lt;/FONT&gt;&lt;/TD&gt;&lt;TD&gt;&lt;FONT color="#000000" face="Calibri" size="3"&gt;1.3345&lt;/FONT&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I need the output to be like below . Can anyone pls help&lt;/P&gt;&lt;TABLE border="0" cellspacing="0" cellpadding="0"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;&lt;FONT color="#000000" face="Calibri" size="3"&gt;credit&lt;/FONT&gt;&lt;/TD&gt;&lt;TD&gt;&lt;FONT color="#000000" face="Calibri" size="3"&gt;product&lt;/FONT&gt;&lt;/TD&gt;&lt;TD&gt;&lt;FONT color="#000000" face="Calibri" size="3"&gt;Factor&lt;/FONT&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;FONT color="#000000" face="Calibri" size="3"&gt;99&lt;/FONT&gt;&lt;/TD&gt;&lt;TD&gt;&lt;FONT color="#000000" face="Calibri" size="3"&gt;company&lt;/FONT&gt;&lt;/TD&gt;&lt;TD&gt;&lt;FONT color="#000000" face="Calibri" size="3"&gt;1.0000&lt;/FONT&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;FONT color="#000000" face="Calibri" size="3"&gt;32&lt;/FONT&gt;&lt;/TD&gt;&lt;TD&gt;&lt;FONT color="#000000" face="Calibri" size="3"&gt;company&lt;/FONT&gt;&lt;/TD&gt;&lt;TD&gt;&lt;FONT color="#000000" face="Calibri" size="3"&gt;1.032&lt;/FONT&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;FONT color="#000000" face="Calibri" size="3"&gt;49&lt;/FONT&gt;&lt;/TD&gt;&lt;TD&gt;&lt;FONT color="#000000" face="Calibri" size="3"&gt;company&lt;/FONT&gt;&lt;/TD&gt;&lt;TD&gt;&lt;FONT color="#000000" face="Calibri" size="3"&gt;1.917&lt;/FONT&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;FONT color="#000000" face="Calibri" size="3"&gt;99&lt;/FONT&gt;&lt;/TD&gt;&lt;TD&gt;&lt;FONT color="#000000" face="Calibri" size="3"&gt;store&lt;/FONT&gt;&lt;/TD&gt;&lt;TD&gt;&lt;FONT color="#000000" face="Calibri" size="3"&gt;1.0000&lt;/FONT&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;FONT color="#000000" face="Calibri" size="3"&gt;32&lt;/FONT&gt;&lt;/TD&gt;&lt;TD&gt;&lt;FONT color="#000000" face="Calibri" size="3"&gt;store&lt;/FONT&gt;&lt;/TD&gt;&lt;TD&gt;&lt;FONT color="#000000" face="Calibri" size="3"&gt;1.0000&lt;/FONT&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;FONT color="#000000" face="Calibri" size="3"&gt;49&lt;/FONT&gt;&lt;/TD&gt;&lt;TD&gt;&lt;FONT color="#000000" face="Calibri" size="3"&gt;store&lt;/FONT&gt;&lt;/TD&gt;&lt;TD&gt;&lt;FONT color="#000000" face="Calibri" size="3"&gt;1.306&lt;/FONT&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;FONT color="#000000" face="Calibri" size="3"&gt;99&lt;/FONT&gt;&lt;/TD&gt;&lt;TD&gt;&lt;FONT color="#000000" face="Calibri" size="3"&gt;price&lt;/FONT&gt;&lt;/TD&gt;&lt;TD&gt;&lt;FONT color="#000000" face="Calibri" size="3"&gt;1.0000&lt;/FONT&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;FONT color="#000000" face="Calibri" size="3"&gt;32&lt;/FONT&gt;&lt;/TD&gt;&lt;TD&gt;&lt;FONT color="#000000" face="Calibri" size="3"&gt;price&lt;/FONT&gt;&lt;/TD&gt;&lt;TD&gt;&lt;FONT color="#000000" face="Calibri" size="3"&gt;1.045&lt;/FONT&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;FONT color="#000000" face="Calibri" size="3"&gt;49&lt;/FONT&gt;&lt;/TD&gt;&lt;TD&gt;&lt;FONT color="#000000" face="Calibri" size="3"&gt;price&lt;/FONT&gt;&lt;/TD&gt;&lt;TD&gt;&lt;FONT color="#000000" face="Calibri" size="3"&gt;1.3345&lt;/FONT&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 17 Jun 2016 00:26:59 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Transpose-data/m-p/278055#M269705</guid>
      <dc:creator>jhh197</dc:creator>
      <dc:date>2016-06-17T00:26:59Z</dc:date>
    </item>
    <item>
      <title>Re: Transpose data</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Transpose-data/m-p/278062#M269706</link>
      <description>&lt;P&gt;Please try the transpose procedure&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data have;
input id	company	store	price;
cards;
99	1.0000	1.0000	1.0000
32	1.032	1.0000	1.045
49	1.917	1.306	1.3345
;

proc sort data=have;
by id;
run;

proc transpose data=have out=trans(rename=(col1=factor)) name=&lt;FONT size="3" face="Calibri" color="#000000"&gt;product&lt;/FONT&gt;;
by id;
var company	store	price;
run;&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Fri, 17 Jun 2016 01:03:23 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Transpose-data/m-p/278062#M269706</guid>
      <dc:creator>Jagadishkatam</dc:creator>
      <dc:date>2016-06-17T01:03:23Z</dc:date>
    </item>
    <item>
      <title>Re: Transpose data</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Transpose-data/m-p/278069#M269707</link>
      <description>&lt;P&gt;Hi Jag,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I got the output but i have a question&amp;nbsp; when i have 100's of variables so i need to list all of them in var ?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;or there an easy way to do it&lt;/P&gt;</description>
      <pubDate>Fri, 17 Jun 2016 01:36:34 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Transpose-data/m-p/278069#M269707</guid>
      <dc:creator>jhh197</dc:creator>
      <dc:date>2016-06-17T01:36:34Z</dc:date>
    </item>
    <item>
      <title>Re: Transpose data</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Transpose-data/m-p/278070#M269708</link>
      <description>&lt;P&gt;Alternatively by arrays&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data want;
length product $10.;
set have;
array cm(3) $10 ("company" "store" "price");
array cmsq(3) company store price;
do i = 1 to 3;
product=cm(i);
factor=cmsq(i);
output;
end;
keep id product factor;
run;&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Fri, 17 Jun 2016 01:40:14 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Transpose-data/m-p/278070#M269708</guid>
      <dc:creator>Jagadishkatam</dc:creator>
      <dc:date>2016-06-17T01:40:14Z</dc:date>
    </item>
    <item>
      <title>Re: Transpose data</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Transpose-data/m-p/278071#M269709</link>
      <description>&lt;P&gt;if you have more variables to transpose then you could create a macro variable and store all the variable that you need to tranpose.&lt;BR /&gt;something like below,&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;in the below example we are using the &amp;amp;var macro variable with all the variable names separated by space in the var statement.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data have;
input id	company	store	price;
cards;
99	1.0000	1.0000	1.0000
32	1.032	1.0000	1.045
49	1.917	1.306	1.3345
;

proc sql;
select name into: var separated by ' ' from dictionary.columns where libname='WORK' and memname='HAVE' and name ne 'id';
quit;

%put &amp;amp;var;&lt;BR /&gt;&lt;BR /&gt;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;PRE class=" language-sas"&gt;&lt;CODE class="  language-sas"&gt;&lt;SPAN class="token procnames"&gt;proc&lt;/SPAN&gt; &lt;SPAN class="token procnames"&gt;sort&lt;/SPAN&gt; &lt;SPAN class="token procnames"&gt;data&lt;/SPAN&gt;&lt;SPAN class="token operator"&gt;=&lt;/SPAN&gt;have&lt;SPAN class="token punctuation"&gt;;&lt;/SPAN&gt;
&lt;SPAN class="token statement"&gt;by&lt;/SPAN&gt; &lt;SPAN class="token keyword"&gt;id&lt;/SPAN&gt;&lt;SPAN class="token punctuation"&gt;;&lt;/SPAN&gt;
&lt;SPAN class="token procnames"&gt;run&lt;/SPAN&gt;&lt;SPAN class="token punctuation"&gt;;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;proc transpose data=have out=trans(rename=(col1=factor)) name=product; &lt;BR /&gt;by id; &lt;BR /&gt;var &amp;amp;var.; &lt;BR /&gt;run;&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Fri, 17 Jun 2016 01:50:39 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Transpose-data/m-p/278071#M269709</guid>
      <dc:creator>Jagadishkatam</dc:creator>
      <dc:date>2016-06-17T01:50:39Z</dc:date>
    </item>
    <item>
      <title>Re: Transpose data</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Transpose-data/m-p/278073#M269710</link>
      <description>&lt;P&gt;Thank you&lt;/P&gt;</description>
      <pubDate>Fri, 17 Jun 2016 01:53:33 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Transpose-data/m-p/278073#M269710</guid>
      <dc:creator>jhh197</dc:creator>
      <dc:date>2016-06-17T01:53:33Z</dc:date>
    </item>
    <item>
      <title>Re: Transpose data</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Transpose-data/m-p/278074#M269711</link>
      <description>&lt;P&gt;you could also automate the array approach as well with the macro variables&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;
proc sql;
select quote(strip(name)), name, count(*) into: var separated by ' ', :var2 separated by ' ', :cnt from dictionary.columns where libname='WORK' and memname='HAVE' and name ne 'id';
quit;

%put &amp;amp;var &amp;amp;var2 &amp;amp;cnt;

data want;
length product $10.;
set have;
array cm(&amp;amp;cnt) $10 (&amp;amp;var);
array cmsq(&amp;amp;cnt) &amp;amp;var2;
do i = 1 to &amp;amp;cnt;
product=cm(i);
factor=cmsq(i);
output;
end;
keep id product factor;
run;&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Fri, 17 Jun 2016 01:56:32 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Transpose-data/m-p/278074#M269711</guid>
      <dc:creator>Jagadishkatam</dc:creator>
      <dc:date>2016-06-17T01:56:32Z</dc:date>
    </item>
    <item>
      <title>Re: Transpose data</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Transpose-data/m-p/278076#M269712</link>
      <description>&lt;P&gt;Thank you . What if i have 100's of these files ?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;is there an easy way&lt;/P&gt;</description>
      <pubDate>Fri, 17 Jun 2016 02:10:47 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Transpose-data/m-p/278076#M269712</guid>
      <dc:creator>jhh197</dc:creator>
      <dc:date>2016-06-17T02:10:47Z</dc:date>
    </item>
    <item>
      <title>Re: Transpose data</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Transpose-data/m-p/278080#M269713</link>
      <description>&lt;P&gt;Thanks a lot&lt;/P&gt;</description>
      <pubDate>Fri, 17 Jun 2016 02:31:21 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Transpose-data/m-p/278080#M269713</guid>
      <dc:creator>jhh197</dc:creator>
      <dc:date>2016-06-17T02:31:21Z</dc:date>
    </item>
    <item>
      <title>Re: Transpose data</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Transpose-data/m-p/278081#M269714</link>
      <description>&lt;P&gt;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/89940"&gt;@jhh197﻿&lt;/a&gt;&amp;nbsp;Please take the time to either 1) Ask a detailed question from the start.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;2) Ask multiple specific questions rather than continuing to build on a question that's been answered and marked as solved.&lt;/P&gt;</description>
      <pubDate>Fri, 17 Jun 2016 02:31:54 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Transpose-data/m-p/278081#M269714</guid>
      <dc:creator>Reeza</dc:creator>
      <dc:date>2016-06-17T02:31:54Z</dc:date>
    </item>
  </channel>
</rss>

