<?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: Swap a portion of data between columns in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/Swap-a-portion-of-data-between-columns/m-p/121157#M293587</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;There is no data step swap function (I've occasionally wished for it) but you can temporarily create another column say temp, then use code such as&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;If (condition to select rows to swap) &lt;/P&gt;&lt;P&gt;&amp;nbsp; then do ;&lt;/P&gt;&lt;P&gt;temp = Var_1 ;&lt;/P&gt;&lt;P&gt;Var_1 = Var2 ;&lt;/P&gt;&lt;P&gt;Var_2 = temp ;&lt;/P&gt;&lt;P&gt;end ;&lt;/P&gt;&lt;P&gt;drop temp ;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;You can also do it in sql, without creating a temp column but it is a lot more verbose.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Richard&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Thu, 10 Jan 2013 10:08:37 GMT</pubDate>
    <dc:creator>RichardinOz</dc:creator>
    <dc:date>2013-01-10T10:08:37Z</dc:date>
    <item>
      <title>Swap a portion of data between columns</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Swap-a-portion-of-data-between-columns/m-p/121156#M293586</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Here's one that Excel can do, so I'll use Excel if no fairly easy SAS way is possible.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Note following portion of data set:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;TABLE height="256.66666662693024" style="width: 466.66666662693024px; height: 257.66666662693024px;"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;Combo&lt;/TD&gt;&lt;TD&gt;Var_1&lt;/TD&gt;&lt;TD&gt;Var_2&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;20101_21603&lt;/TD&gt;&lt;TD&gt;0.&lt;/TD&gt;&lt;TD&gt;-1.94930&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;20101_21603&lt;/TD&gt;&lt;TD&gt;0.&lt;/TD&gt;&lt;TD&gt;-1.80663&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;20101_21603&lt;/TD&gt;&lt;TD&gt;0.&lt;/TD&gt;&lt;TD&gt;-1.66396&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;20101_21603&lt;/TD&gt;&lt;TD&gt;0.&lt;/TD&gt;&lt;TD&gt;-1.52129&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;21603_20101&lt;/TD&gt;&lt;TD&gt;-0.80794&lt;/TD&gt;&lt;TD&gt;0.&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;21603_20101&lt;/TD&gt;&lt;TD&gt;-0.66527&lt;/TD&gt;&lt;TD&gt;0.&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;21603_20101&lt;/TD&gt;&lt;TD&gt;-0.52260&lt;/TD&gt;&lt;TD&gt;0.&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;21603_20101&lt;/TD&gt;&lt;TD&gt;-0.37993&lt;/TD&gt;&lt;TD&gt;0.&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Focus only on the Var_1 and Var_2 columns..., at least for the time being.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I need to "swap" the contents of the bottom four rows of cells.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Does SAS have a way to do this -- without your having to write tons of code?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks much.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Nicholas Kormanik&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 10 Jan 2013 09:58:51 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Swap-a-portion-of-data-between-columns/m-p/121156#M293586</guid>
      <dc:creator>NKormanik</dc:creator>
      <dc:date>2013-01-10T09:58:51Z</dc:date>
    </item>
    <item>
      <title>Re: Swap a portion of data between columns</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Swap-a-portion-of-data-between-columns/m-p/121157#M293587</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;There is no data step swap function (I've occasionally wished for it) but you can temporarily create another column say temp, then use code such as&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;If (condition to select rows to swap) &lt;/P&gt;&lt;P&gt;&amp;nbsp; then do ;&lt;/P&gt;&lt;P&gt;temp = Var_1 ;&lt;/P&gt;&lt;P&gt;Var_1 = Var2 ;&lt;/P&gt;&lt;P&gt;Var_2 = temp ;&lt;/P&gt;&lt;P&gt;end ;&lt;/P&gt;&lt;P&gt;drop temp ;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;You can also do it in sql, without creating a temp column but it is a lot more verbose.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Richard&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 10 Jan 2013 10:08:37 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Swap-a-portion-of-data-between-columns/m-p/121157#M293587</guid>
      <dc:creator>RichardinOz</dc:creator>
      <dc:date>2013-01-10T10:08:37Z</dc:date>
    </item>
    <item>
      <title>Re: Swap a portion of data between columns</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Swap-a-portion-of-data-between-columns/m-p/121158#M293588</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Unclear where you write the line for &lt;EM&gt;tons &lt;img id="smileywink" class="emoticon emoticon-smileywink" src="https://communities.sas.com/i/smilies/16x16_smiley-wink.png" alt="Smiley Wink" title="Smiley Wink" /&gt;&lt;/EM&gt;, but here goes (assuming that you need to store column with values &amp;lt;&amp;gt; 0 in one column):&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;proc sql;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; update mytable&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; set var_2 = var_1&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; where var_1 &amp;lt;&amp;gt; 0 and var_2 = 0&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ;&lt;/P&gt;&lt;P&gt;quit;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Comparing to Excel is puzzling me. Excel is great when doing minor ad-hoc stuff, SAS is suited for developing programs that can be used multiple times, in batch etc.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 10 Jan 2013 10:12:13 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Swap-a-portion-of-data-between-columns/m-p/121158#M293588</guid>
      <dc:creator>LinusH</dc:creator>
      <dc:date>2013-01-10T10:12:13Z</dc:date>
    </item>
  </channel>
</rss>

