<?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: first.variable help in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/first-variable-help/m-p/460491#M117048</link>
    <description>&lt;P&gt;Thanks for spotting my error and providing the missing BY as solution!&lt;/P&gt;</description>
    <pubDate>Mon, 07 May 2018 15:57:48 GMT</pubDate>
    <dc:creator>samadams1965</dc:creator>
    <dc:date>2018-05-07T15:57:48Z</dc:date>
    <item>
      <title>first.variable help</title>
      <link>https://communities.sas.com/t5/SAS-Programming/first-variable-help/m-p/460445#M117038</link>
      <description>&lt;P&gt;I'm trying to output the first var3 for a first observation in a group of var1 AND var2, with output of var3 now var4.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Example data:&lt;/P&gt;&lt;P&gt;var1 &amp;nbsp; var2&amp;nbsp; var3&lt;/P&gt;&lt;P&gt;1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 100&lt;/P&gt;&lt;P&gt;1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 200&lt;/P&gt;&lt;P&gt;2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 300&lt;/P&gt;&lt;P&gt;2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 400&lt;/P&gt;&lt;P&gt;2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 500&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Expected output:&lt;/P&gt;&lt;P&gt;var1&amp;nbsp; var2&amp;nbsp;&amp;nbsp; var4&lt;/P&gt;&lt;P&gt;1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 100&lt;/P&gt;&lt;P&gt;2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 400&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Here is my code, but it's not working as log shows first.var1 and first.var2 are uninititalized.&lt;/P&gt;&lt;P&gt;I'd appreciate any advice.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;proc sort data=mydata out=mydata2; by var1 var2;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;data mydata3;&lt;BR /&gt;set mydata2;&lt;BR /&gt;if FIRST.var1 and FIRST.var2 then&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; var4=var3;&lt;BR /&gt;run;&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;&lt;P&gt;&amp;nbsp;&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;&lt;P&gt;&amp;nbsp;&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;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 07 May 2018 14:53:56 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/first-variable-help/m-p/460445#M117038</guid>
      <dc:creator>samadams1965</dc:creator>
      <dc:date>2018-05-07T14:53:56Z</dc:date>
    </item>
    <item>
      <title>Re: first.variable help</title>
      <link>https://communities.sas.com/t5/SAS-Programming/first-variable-help/m-p/460451#M117041</link>
      <description>&lt;P&gt;First. and Last. processing require a BY statement. You were almost there:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;data mydata3;&lt;BR /&gt;set mydata2;&lt;/P&gt;
&lt;P&gt;by var1 var2;&lt;BR /&gt;if FIRST.var1 and FIRST.var2 then&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; var4=var3;&lt;BR /&gt;run;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;But your shown example output of&lt;/P&gt;
&lt;P&gt;2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 400&lt;/P&gt;
&lt;P&gt;does not match your description of wanting the First of var1 and first of var2 which would be&lt;/P&gt;
&lt;P&gt;2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 300&lt;/P&gt;
&lt;P&gt;for your given example input&lt;/P&gt;</description>
      <pubDate>Mon, 07 May 2018 14:55:25 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/first-variable-help/m-p/460451#M117041</guid>
      <dc:creator>ballardw</dc:creator>
      <dc:date>2018-05-07T14:55:25Z</dc:date>
    </item>
    <item>
      <title>Re: first.variable help</title>
      <link>https://communities.sas.com/t5/SAS-Programming/first-variable-help/m-p/460491#M117048</link>
      <description>&lt;P&gt;Thanks for spotting my error and providing the missing BY as solution!&lt;/P&gt;</description>
      <pubDate>Mon, 07 May 2018 15:57:48 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/first-variable-help/m-p/460491#M117048</guid>
      <dc:creator>samadams1965</dc:creator>
      <dc:date>2018-05-07T15:57:48Z</dc:date>
    </item>
    <item>
      <title>Re: first.variable help</title>
      <link>https://communities.sas.com/t5/SAS-Programming/first-variable-help/m-p/460493#M117049</link>
      <description>&lt;P&gt;You asked for output of first observations by var1 and var2.&amp;nbsp;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Did you mean first.var1 and first.var2 ?&lt;/P&gt;
&lt;P&gt;I assumed no.&lt;/P&gt;
&lt;P&gt;In this case the output should contain 3 obs:&lt;/P&gt;
&lt;PRE&gt;var1  var2   var4
1        1       100
2        1       400
2        2       500&lt;/PRE&gt;
&lt;P&gt;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/13884"&gt;@ballardw&lt;/a&gt;'s solution miss OUTPUT statement. As is you will get the &lt;STRONG&gt;&lt;U&gt;all&lt;/U&gt; &lt;/STRONG&gt;input obs in output.&lt;/P&gt;
&lt;P&gt;So the solution should be:&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data mydata3;
set mydata2;

by var1 var2;
if FIRST.var2 then do;
      var4=var3;
      output;
end;
drop var3;
run;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;Alternative solution:&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data mydata3(rename=(var3=var4));
  set mydata2;
    by var1 var2;
   if FIRST.var2 then output;
run;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 07 May 2018 16:08:40 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/first-variable-help/m-p/460493#M117049</guid>
      <dc:creator>Shmuel</dc:creator>
      <dc:date>2018-05-07T16:08:40Z</dc:date>
    </item>
  </channel>
</rss>

