<?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: Change columns to observations in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/Change-columns-to-observations/m-p/512329#M137963</link>
    <description>&lt;P&gt;If you are really interested in changing just 3 variables, here's a very simple way:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;data want;&lt;/P&gt;
&lt;P&gt;set have;&lt;/P&gt;
&lt;P&gt;v=v1;&lt;/P&gt;
&lt;P&gt;output;&lt;/P&gt;
&lt;P&gt;v=v2;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;output;&lt;/P&gt;
&lt;P&gt;v=v3;&lt;/P&gt;
&lt;P&gt;output;&lt;/P&gt;
&lt;P&gt;drop v1 v2 v3;&lt;/P&gt;
&lt;P&gt;run;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;If you actually have more than 3 variables, putting them into an array (as was suggested) is an excellent idea.&lt;/P&gt;</description>
    <pubDate>Mon, 12 Nov 2018 20:18:39 GMT</pubDate>
    <dc:creator>Astounding</dc:creator>
    <dc:date>2018-11-12T20:18:39Z</dc:date>
    <item>
      <title>Change columns to observations</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Change-columns-to-observations/m-p/512301#M137945</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I have several &amp;nbsp;data sets that look like:&lt;/P&gt;&lt;P&gt;Obs v1 v2 v3&lt;/P&gt;&lt;P&gt;1 2 3 3&lt;/P&gt;&lt;P&gt;2 5 3 2&lt;/P&gt;&lt;P&gt;3 1 0 3&lt;/P&gt;&lt;P&gt;etc&lt;/P&gt;&lt;P&gt;;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;And would like to move the columns to rows:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Obs v&lt;/P&gt;&lt;P&gt;1 2&lt;/P&gt;&lt;P&gt;2 5&lt;/P&gt;&lt;P&gt;3 1&lt;/P&gt;&lt;P&gt;1 3&lt;/P&gt;&lt;P&gt;2 3&lt;/P&gt;&lt;P&gt;3 0&lt;/P&gt;&lt;P&gt;1 3&lt;/P&gt;&lt;P&gt;2 2&lt;/P&gt;&lt;P&gt;3 3&lt;/P&gt;&lt;P&gt;etc&lt;/P&gt;&lt;P&gt;;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Is there a simple way to do this in data step (instead of using transpose or other procedures)?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thanks for assistance with this.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Jason&lt;/P&gt;</description>
      <pubDate>Mon, 12 Nov 2018 19:13:26 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Change-columns-to-observations/m-p/512301#M137945</guid>
      <dc:creator>Jason2020</dc:creator>
      <dc:date>2018-11-12T19:13:26Z</dc:date>
    </item>
    <item>
      <title>Re: Change columns to observations</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Change-columns-to-observations/m-p/512304#M137947</link>
      <description>&lt;P&gt;Why not use the best tool&amp;nbsp; for the job, i.e. proc transpose?&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;In a data step,&amp;nbsp;put V1-V3 in&amp;nbsp;an array and output each value in a&amp;nbsp;do LOOP.&lt;/P&gt;</description>
      <pubDate>Mon, 12 Nov 2018 19:24:56 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Change-columns-to-observations/m-p/512304#M137947</guid>
      <dc:creator>PGStats</dc:creator>
      <dc:date>2018-11-12T19:24:56Z</dc:date>
    </item>
    <item>
      <title>Re: Change columns to observations</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Change-columns-to-observations/m-p/512306#M137948</link>
      <description>&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data have;
input Obs v1 v2 v3;
cards;
1 2 3 3
2 5 3 2
3 1 0 3
;


;
run;
proc transpose data=have out=_h;
by _all_;
var v:;
run;
proc sort data=_h out=want(keep=col1);
by _name_;
run;
&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Mon, 12 Nov 2018 19:25:34 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Change-columns-to-observations/m-p/512306#M137948</guid>
      <dc:creator>novinosrin</dc:creator>
      <dc:date>2018-11-12T19:25:34Z</dc:date>
    </item>
    <item>
      <title>Re: Change columns to observations</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Change-columns-to-observations/m-p/512309#M137950</link>
      <description>&lt;P&gt;I know that I could use transpose. However, because the data set has other variables that I want be copied (not transposed) to the vertical output set I thought using the data step is less complicated.&lt;/P&gt;</description>
      <pubDate>Mon, 12 Nov 2018 19:39:54 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Change-columns-to-observations/m-p/512309#M137950</guid>
      <dc:creator>Jason2020</dc:creator>
      <dc:date>2018-11-12T19:39:54Z</dc:date>
    </item>
    <item>
      <title>Re: Change columns to observations</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Change-columns-to-observations/m-p/512314#M137952</link>
      <description>&lt;P&gt;ok PG's suggested, loop and array should suffice&lt;/P&gt;</description>
      <pubDate>Mon, 12 Nov 2018 19:50:26 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Change-columns-to-observations/m-p/512314#M137952</guid>
      <dc:creator>novinosrin</dc:creator>
      <dc:date>2018-11-12T19:50:26Z</dc:date>
    </item>
    <item>
      <title>Re: Change columns to observations</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Change-columns-to-observations/m-p/512318#M137955</link>
      <description>Yes there is, see this tutorial/write up on going from wide to long with a data step. Basically use the OUTPUT statement. &lt;BR /&gt;&lt;A href="https://stats.idre.ucla.edu/sas/modules/reshaping-data-wide-to-long-using-a-data-step/" target="_blank"&gt;https://stats.idre.ucla.edu/sas/modules/reshaping-data-wide-to-long-using-a-data-step/&lt;/A&gt;</description>
      <pubDate>Mon, 12 Nov 2018 20:01:39 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Change-columns-to-observations/m-p/512318#M137955</guid>
      <dc:creator>Reeza</dc:creator>
      <dc:date>2018-11-12T20:01:39Z</dc:date>
    </item>
    <item>
      <title>Re: Change columns to observations</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Change-columns-to-observations/m-p/512329#M137963</link>
      <description>&lt;P&gt;If you are really interested in changing just 3 variables, here's a very simple way:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;data want;&lt;/P&gt;
&lt;P&gt;set have;&lt;/P&gt;
&lt;P&gt;v=v1;&lt;/P&gt;
&lt;P&gt;output;&lt;/P&gt;
&lt;P&gt;v=v2;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;output;&lt;/P&gt;
&lt;P&gt;v=v3;&lt;/P&gt;
&lt;P&gt;output;&lt;/P&gt;
&lt;P&gt;drop v1 v2 v3;&lt;/P&gt;
&lt;P&gt;run;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;If you actually have more than 3 variables, putting them into an array (as was suggested) is an excellent idea.&lt;/P&gt;</description>
      <pubDate>Mon, 12 Nov 2018 20:18:39 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Change-columns-to-observations/m-p/512329#M137963</guid>
      <dc:creator>Astounding</dc:creator>
      <dc:date>2018-11-12T20:18:39Z</dc:date>
    </item>
    <item>
      <title>Re: Change columns to observations</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Change-columns-to-observations/m-p/512338#M137969</link>
      <description>&lt;P&gt;Thanks to all. All your replies were very useful. I appreciate it.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Jason&lt;/P&gt;</description>
      <pubDate>Mon, 12 Nov 2018 20:35:25 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Change-columns-to-observations/m-p/512338#M137969</guid>
      <dc:creator>Jason2020</dc:creator>
      <dc:date>2018-11-12T20:35:25Z</dc:date>
    </item>
    <item>
      <title>Re: Change columns to observations</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Change-columns-to-observations/m-p/512523#M138062</link>
      <description>&lt;P&gt;Did I missed something ?&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data have;
input Obs v1 v2 v3;
cards;
1 2 3 3
2 5 3 2
3 1 0 3
;

data want;
 set have(keep=obs v1 rename=(v1=v))
 have(keep=obs v2 rename=(v2=v))
 have(keep=obs v3 rename=(v3=v));
run;&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Tue, 13 Nov 2018 12:55:47 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Change-columns-to-observations/m-p/512523#M138062</guid>
      <dc:creator>Ksharp</dc:creator>
      <dc:date>2018-11-13T12:55:47Z</dc:date>
    </item>
    <item>
      <title>Re: Change columns to observations</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Change-columns-to-observations/m-p/512585#M138079</link>
      <description>&lt;P&gt;Just a small point.&amp;nbsp; In reality, the KEEP list is longer.&amp;nbsp; You would either need to spell out a longer list, or switch to:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;set have (drop=v2 v3 rename=(v1=v))&lt;/P&gt;
&lt;P&gt;have (drop=v1 v3 rename=(v2=v))&lt;/P&gt;
&lt;P&gt;have (drop=v1 v2 rename=(v3=v));&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 13 Nov 2018 15:28:47 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Change-columns-to-observations/m-p/512585#M138079</guid>
      <dc:creator>Astounding</dc:creator>
      <dc:date>2018-11-13T15:28:47Z</dc:date>
    </item>
    <item>
      <title>Re: Change columns to observations</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Change-columns-to-observations/m-p/512921#M138183</link>
      <description>&lt;P&gt;Astounding,&lt;/P&gt;
&lt;P&gt;You mean you save more code than me ?&lt;/P&gt;</description>
      <pubDate>Wed, 14 Nov 2018 12:19:47 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Change-columns-to-observations/m-p/512921#M138183</guid>
      <dc:creator>Ksharp</dc:creator>
      <dc:date>2018-11-14T12:19:47Z</dc:date>
    </item>
    <item>
      <title>Re: Change columns to observations</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Change-columns-to-observations/m-p/512929#M138185</link>
      <description>&lt;P&gt;Sort of.&amp;nbsp; Buried in one of the messages is that OBS represents many variables, not just a single variable.&amp;nbsp; The message didn't say how many, but if there were 30 variables that needed to be carried to the output, they all would need to appear in the KEEP list.&lt;/P&gt;</description>
      <pubDate>Wed, 14 Nov 2018 13:24:53 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Change-columns-to-observations/m-p/512929#M138185</guid>
      <dc:creator>Astounding</dc:creator>
      <dc:date>2018-11-14T13:24:53Z</dc:date>
    </item>
    <item>
      <title>Re: Change columns to observations</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Change-columns-to-observations/m-p/512940#M138191</link>
      <description>&lt;P&gt;OK. I know you .&lt;/P&gt;</description>
      <pubDate>Wed, 14 Nov 2018 13:44:42 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Change-columns-to-observations/m-p/512940#M138191</guid>
      <dc:creator>Ksharp</dc:creator>
      <dc:date>2018-11-14T13:44:42Z</dc:date>
    </item>
  </channel>
</rss>

