<?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: derive last record in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/derive-last-record/m-p/491885#M129138</link>
    <description>&lt;P&gt;Two step process&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;Delete records with missing values&lt;/LI&gt;
&lt;LI&gt;Use the LAST. structure in a SAS data step to find the last record in each group &lt;A href="https://documentation.sas.com/?docsetId=lrcon&amp;amp;docsetTarget=n01a08zkzy5igbn173zjz82zsi1s.htm&amp;amp;docsetVersion=9.4&amp;amp;locale=en" target="_blank"&gt;https://documentation.sas.com/?docsetId=lrcon&amp;amp;docsetTarget=n01a08zkzy5igbn173zjz82zsi1s.htm&amp;amp;docsetVersion=9.4&amp;amp;locale=en&lt;/A&gt;&lt;/LI&gt;
&lt;/OL&gt;</description>
    <pubDate>Sun, 02 Sep 2018 12:42:11 GMT</pubDate>
    <dc:creator>PaigeMiller</dc:creator>
    <dc:date>2018-09-02T12:42:11Z</dc:date>
    <item>
      <title>derive last record</title>
      <link>https://communities.sas.com/t5/SAS-Programming/derive-last-record/m-p/491884#M129137</link>
      <description>&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;&lt;P&gt;&lt;STRONG&gt;subid&lt;/STRONG&gt;&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;&lt;STRONG&gt;Date&lt;/STRONG&gt;&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;&lt;STRONG&gt;Dose&lt;/STRONG&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;P&gt;P101&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;13JAN2005&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;Asp-05mg&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;P&gt;P101&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;19JAN2005&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;Asp-10mg&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;P&gt;P101&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;25JAN2005&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;Asp-15mg&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;P&gt;P101&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;31JAN2005&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;P&gt;P102&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;14JAN2005&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;Asp-10mg&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;P&gt;P102&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;20JAN2005&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;Asp-05mg&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;P&gt;P102&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;26JAN2005&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;Asp-15mg&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;P&gt;P102&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;01FEB2005&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;Asp-15mg&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;P&gt;P103&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;19JAN2005&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;Asp-15mg&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;P&gt;P103&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;25JAN2005&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;Asp-10mg&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;P&gt;P103&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;30JAN2005&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;Asp-10mg&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;P&gt;P104&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;26JAN2005&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;Asp-10mg&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;P&gt;P104&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;02FEB2005&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;Asp-10mg&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;P&gt;P105&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;02FEB2005&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;Asp-20mg&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;derive every group last record without missing like see below dataset&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;&lt;P&gt;&lt;STRONG&gt;subid&lt;/STRONG&gt;&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;&lt;STRONG&gt;Date&lt;/STRONG&gt;&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;&lt;STRONG&gt;Dose&lt;/STRONG&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;P&gt;P101&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;25JAN2005&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;Asp-15mg&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;P&gt;P102&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;01FEB2005&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;Asp-15mg&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;P&gt;P103&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;30JAN2005&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;Asp-10mg&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;P&gt;P104&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;02FEB2005&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;Asp-10mg&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;P&gt;P105&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;02FEB2005&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;Asp-20mg&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;</description>
      <pubDate>Sun, 02 Sep 2018 12:37:40 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/derive-last-record/m-p/491884#M129137</guid>
      <dc:creator>thanikondharish</dc:creator>
      <dc:date>2018-09-02T12:37:40Z</dc:date>
    </item>
    <item>
      <title>Re: derive last record</title>
      <link>https://communities.sas.com/t5/SAS-Programming/derive-last-record/m-p/491885#M129138</link>
      <description>&lt;P&gt;Two step process&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;Delete records with missing values&lt;/LI&gt;
&lt;LI&gt;Use the LAST. structure in a SAS data step to find the last record in each group &lt;A href="https://documentation.sas.com/?docsetId=lrcon&amp;amp;docsetTarget=n01a08zkzy5igbn173zjz82zsi1s.htm&amp;amp;docsetVersion=9.4&amp;amp;locale=en" target="_blank"&gt;https://documentation.sas.com/?docsetId=lrcon&amp;amp;docsetTarget=n01a08zkzy5igbn173zjz82zsi1s.htm&amp;amp;docsetVersion=9.4&amp;amp;locale=en&lt;/A&gt;&lt;/LI&gt;
&lt;/OL&gt;</description>
      <pubDate>Sun, 02 Sep 2018 12:42:11 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/derive-last-record/m-p/491885#M129138</guid>
      <dc:creator>PaigeMiller</dc:creator>
      <dc:date>2018-09-02T12:42:11Z</dc:date>
    </item>
    <item>
      <title>Re: derive last record</title>
      <link>https://communities.sas.com/t5/SAS-Programming/derive-last-record/m-p/491886#M129139</link>
      <description>yes i did what you mentioned like two step process&lt;BR /&gt;is there any method in single step</description>
      <pubDate>Sun, 02 Sep 2018 12:45:31 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/derive-last-record/m-p/491886#M129139</guid>
      <dc:creator>thanikondharish</dc:creator>
      <dc:date>2018-09-02T12:45:31Z</dc:date>
    </item>
    <item>
      <title>Re: derive last record</title>
      <link>https://communities.sas.com/t5/SAS-Programming/derive-last-record/m-p/491888#M129141</link>
      <description>&lt;P&gt;In the set statement, use a where= dataset option to get rid of the missing values.&lt;/P&gt;</description>
      <pubDate>Sun, 02 Sep 2018 13:25:32 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/derive-last-record/m-p/491888#M129141</guid>
      <dc:creator>Kurt_Bremser</dc:creator>
      <dc:date>2018-09-02T13:25:32Z</dc:date>
    </item>
    <item>
      <title>Re: derive last record</title>
      <link>https://communities.sas.com/t5/SAS-Programming/derive-last-record/m-p/491970#M129198</link>
      <description>without using where condition&lt;BR /&gt;</description>
      <pubDate>Mon, 03 Sep 2018 04:49:31 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/derive-last-record/m-p/491970#M129198</guid>
      <dc:creator>thanikondharish</dc:creator>
      <dc:date>2018-09-03T04:49:31Z</dc:date>
    </item>
    <item>
      <title>Re: derive last record</title>
      <link>https://communities.sas.com/t5/SAS-Programming/derive-last-record/m-p/491975#M129202</link>
      <description>&lt;BLOCKQUOTE&gt;&lt;HR /&gt;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/209685"&gt;@thanikondharish&lt;/a&gt;&amp;nbsp;wrote:&lt;BR /&gt;without using where condition&lt;BR /&gt;&lt;HR /&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;Why?&lt;/P&gt;</description>
      <pubDate>Mon, 03 Sep 2018 05:05:36 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/derive-last-record/m-p/491975#M129202</guid>
      <dc:creator>error_prone</dc:creator>
      <dc:date>2018-09-03T05:05:36Z</dc:date>
    </item>
    <item>
      <title>Re: derive last record</title>
      <link>https://communities.sas.com/t5/SAS-Programming/derive-last-record/m-p/491987#M129211</link>
      <description>&lt;P&gt;If you want to &lt;EM&gt;act&lt;/EM&gt; on a condition, you need to &lt;EM&gt;program&lt;/EM&gt; it. Don't be an idiot here.&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data have;
infile cards truncover;
input subid :$4. date: date9. dose :$8.;
format date date9.;
cards;
P101 13JAN2005 Asp-05mg
P101 19JAN2005 Asp-10mg
P101 25JAN2005 Asp-15mg
P101 31JAN2005 
P102 14JAN2005 Asp-10mg
P102 20JAN2005 Asp-05mg
P102 26JAN2005 Asp-15mg
P102 01FEB2005 Asp-15mg
P103 19JAN2005 Asp-15mg
P103 25JAN2005 Asp-10mg
P103 30JAN2005 Asp-10mg
P104 26JAN2005 Asp-10mg
P104 02FEB2005 Asp-10mg
P105 02FEB2005 Asp-20mg
;
run;

data want;
set have (where=(dose ne ''));
by subid;
if last.subid;
run;

proc print data=want noobs;
run;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;Result:&lt;/P&gt;
&lt;PRE&gt;subid         date      dose

P101     25JAN2005    Asp-15mg
P102     01FEB2005    Asp-15mg
P103     30JAN2005    Asp-10mg
P104     02FEB2005    Asp-10mg
P105     02FEB2005    Asp-20mg
&lt;/PRE&gt;
&lt;P&gt;Problem solved, case closed.&lt;/P&gt;</description>
      <pubDate>Mon, 03 Sep 2018 06:37:09 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/derive-last-record/m-p/491987#M129211</guid>
      <dc:creator>Kurt_Bremser</dc:creator>
      <dc:date>2018-09-03T06:37:09Z</dc:date>
    </item>
    <item>
      <title>Re: derive last record</title>
      <link>https://communities.sas.com/t5/SAS-Programming/derive-last-record/m-p/492059#M129256</link>
      <description>&lt;P&gt;Is there any reason you are unable to use WHERE ? or just want check our sas skill ?&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data have;
infile cards truncover;
input subid :$4. date: date9. dose :$8.;
format date date9.;
cards;
P101 13JAN2005 Asp-05mg
P101 19JAN2005 Asp-10mg
P101 25JAN2005 Asp-15mg
P101 31JAN2005 
P102 14JAN2005 Asp-10mg
P102 20JAN2005 Asp-05mg
P102 26JAN2005 Asp-15mg
P102 01FEB2005 Asp-15mg
P103 19JAN2005 Asp-15mg
P103 25JAN2005 Asp-10mg
P103 30JAN2005 Asp-10mg
P104 26JAN2005 Asp-10mg
P104 02FEB2005 Asp-10mg
P105 02FEB2005 Asp-20mg
;
run;
data want;
 do i=1 by 1 until(last.subid);
   set have;
   by subid;
   if not missing(dose) then _i=i;
 end;
 do i=1 by 1 until(last.subid);
   set have;
   by subid;
   if _i=i then output;
 end;
 drop i _i;
 run;&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Mon, 03 Sep 2018 13:59:11 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/derive-last-record/m-p/492059#M129256</guid>
      <dc:creator>Ksharp</dc:creator>
      <dc:date>2018-09-03T13:59:11Z</dc:date>
    </item>
  </channel>
</rss>

