<?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: Transforming Dataset Using Looping in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/Transforming-Dataset-Using-Looping/m-p/593923#M170550</link>
    <description>&lt;P&gt;Please provide data as text and the rules relating input and desired output. I can't guess from what you posted.&lt;/P&gt;</description>
    <pubDate>Thu, 03 Oct 2019 21:03:24 GMT</pubDate>
    <dc:creator>PGStats</dc:creator>
    <dc:date>2019-10-03T21:03:24Z</dc:date>
    <item>
      <title>Transforming Dataset Using Looping</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Transforming-Dataset-Using-Looping/m-p/593896#M170536</link>
      <description>&lt;P&gt;Hello,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I have a file that looks like the attached file.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I need to transform it to something like the sample table below.&amp;nbsp; I'm assuming I need to do some kind of looping, but don't know how to do this.&amp;nbsp; Please advise.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Capture2.PNG" style="width: 368px;"&gt;&lt;img src="https://communities.sas.com/t5/image/serverpage/image-id/32950i94F1579073D9C9AA/image-size/large?v=v2&amp;amp;px=999" role="button" title="Capture2.PNG" alt="Capture2.PNG" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 07 Oct 2019 15:43:36 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Transforming-Dataset-Using-Looping/m-p/593896#M170536</guid>
      <dc:creator>Mere_Bear</dc:creator>
      <dc:date>2019-10-07T15:43:36Z</dc:date>
    </item>
    <item>
      <title>Re: Transforming Dataset Using Looping</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Transforming-Dataset-Using-Looping/m-p/593923#M170550</link>
      <description>&lt;P&gt;Please provide data as text and the rules relating input and desired output. I can't guess from what you posted.&lt;/P&gt;</description>
      <pubDate>Thu, 03 Oct 2019 21:03:24 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Transforming-Dataset-Using-Looping/m-p/593923#M170550</guid>
      <dc:creator>PGStats</dc:creator>
      <dc:date>2019-10-03T21:03:24Z</dc:date>
    </item>
    <item>
      <title>Re: Transforming Dataset Using Looping</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Transforming-Dataset-Using-Looping/m-p/594228#M170676</link>
      <description>&lt;P&gt;I solved my own problem just now.&amp;nbsp; It's probably not the most efficient but it works.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Sample data attached.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Sample code below gives the desired result.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;/*Pull ID and create UserID and UserName from source data*/&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;proc&lt;/STRONG&gt; &lt;STRONG&gt;sql&lt;/STRONG&gt;;&lt;/P&gt;&lt;P&gt;create table TestIDs as&lt;/P&gt;&lt;P&gt;select ID as UserID, catx('', 'Test', ID) as UserName&lt;/P&gt;&lt;P&gt;from DashboardVars;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;quit&lt;/STRONG&gt;;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;/*appends the file by the number of IDs in the file; also create new ID variable*/&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;data&lt;/STRONG&gt; TestIDs2(drop=i);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; set TestIDs;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; do i = &lt;STRONG&gt;1&lt;/STRONG&gt; to &lt;STRONG&gt;28&lt;/STRONG&gt;;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; ID = i;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; output;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; end;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; &lt;STRONG&gt;run&lt;/STRONG&gt;;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;/*if UserID and ID match, then it is assigned MyGroup*/&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;data&lt;/STRONG&gt; TestIDs3;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; set TestIDs2;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if UserID = ID then Group = "MyGroup";&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else Group = "Others";&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;run&lt;/STRONG&gt;;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;/*left join original source file by ID*/&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;proc&lt;/STRONG&gt; &lt;STRONG&gt;sql&lt;/STRONG&gt;;&lt;/P&gt;&lt;P&gt;create table DashboardVarsNew as&lt;/P&gt;&lt;P&gt;select t1.*, t2.*&lt;/P&gt;&lt;P&gt;from TestIDs3 t1&lt;/P&gt;&lt;P&gt;left join DashboardVars t2 on t1.ID = t2.ID&lt;/P&gt;&lt;P&gt;order by UserID, ID;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;quit&lt;/STRONG&gt;;&lt;/P&gt;</description>
      <pubDate>Fri, 04 Oct 2019 20:43:32 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Transforming-Dataset-Using-Looping/m-p/594228#M170676</guid>
      <dc:creator>Mere_Bear</dc:creator>
      <dc:date>2019-10-04T20:43:32Z</dc:date>
    </item>
  </channel>
</rss>

