<?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 Use previous value if the date is missing in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/Use-previous-value-if-the-date-is-missing/m-p/567166#M159463</link>
    <description>&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I have table with many id1 and id2 pairs&lt;/P&gt;&lt;P&gt;id1&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; id2&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; date&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;value&lt;/P&gt;&lt;P&gt;7899&amp;nbsp; &amp;nbsp; &amp;nbsp; 11774&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 31MAR2010&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 10&lt;/P&gt;&lt;P&gt;7899&amp;nbsp; &amp;nbsp; &amp;nbsp; 11774&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 30APR2010&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;20&lt;/P&gt;&lt;P&gt;7899&amp;nbsp; &amp;nbsp; &amp;nbsp; 11774&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;30JUN2010&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;40&lt;/P&gt;&lt;P&gt;7899&amp;nbsp; &amp;nbsp; &amp;nbsp; 11774&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 31AUG2010&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 60&lt;/P&gt;&lt;P&gt;8110&amp;nbsp; &amp;nbsp; &amp;nbsp; 45987&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 31DEC2010&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;100&lt;/P&gt;&lt;P&gt;......&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Then I want to add 10 months for every&amp;nbsp;id1 and id2 pair from the starting date and on. If a value is missing I want it to use the previous months value. The resulting table will then look like this.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;id1&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; id2&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; date&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;value&lt;/P&gt;&lt;P&gt;7899&amp;nbsp; &amp;nbsp; &amp;nbsp; 11774&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 31MAR2010&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 10&lt;/P&gt;&lt;P&gt;7899&amp;nbsp; &amp;nbsp; &amp;nbsp; 11774&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 30APR2010&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;20&lt;/P&gt;&lt;P&gt;7899&amp;nbsp; &amp;nbsp; &amp;nbsp; 11774&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 31MAY2010&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;20&lt;/P&gt;&lt;P&gt;7899&amp;nbsp; &amp;nbsp; &amp;nbsp; 11774&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;30JUN2010&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;40&lt;/P&gt;&lt;P&gt;7899&amp;nbsp; &amp;nbsp; &amp;nbsp; 11774&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;31JUL2010&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;40&lt;/P&gt;&lt;P&gt;7899&amp;nbsp; &amp;nbsp; &amp;nbsp; 11774&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 31AUG2010&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 60&lt;/P&gt;&lt;P&gt;7899&amp;nbsp; &amp;nbsp; &amp;nbsp; 11774&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 30SEP2010&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 60&lt;/P&gt;&lt;P&gt;7899&amp;nbsp; &amp;nbsp; &amp;nbsp; 11774&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 31OKT2010&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 60&lt;/P&gt;&lt;P&gt;7899&amp;nbsp; &amp;nbsp; &amp;nbsp; 11774&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 30NOV2010&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 60&lt;/P&gt;&lt;P&gt;7899&amp;nbsp; &amp;nbsp; &amp;nbsp; 11774&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 31DEC2010&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 60&lt;/P&gt;&lt;P&gt;8110&amp;nbsp; &amp;nbsp; &amp;nbsp; 45987&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 31DEC2010&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;100&lt;/P&gt;&lt;P&gt;8110&amp;nbsp; &amp;nbsp; &amp;nbsp; 45987&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 31JAN2011&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;100&lt;/P&gt;&lt;P&gt;8110&amp;nbsp; &amp;nbsp; &amp;nbsp; 45987&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 28FEB2011&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;100&lt;/P&gt;&lt;P&gt;8110&amp;nbsp; &amp;nbsp; &amp;nbsp; 45987&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 31MAR2011&amp;nbsp; &amp;nbsp; &amp;nbsp; 100&lt;/P&gt;&lt;P&gt;8110&amp;nbsp; &amp;nbsp; &amp;nbsp; 45987&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 30APR2011&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;100&lt;/P&gt;&lt;P&gt;8110&amp;nbsp; &amp;nbsp; &amp;nbsp; 45987&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 31MAY2011&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;100&lt;/P&gt;&lt;P&gt;8110&amp;nbsp; &amp;nbsp; &amp;nbsp; 45987&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 30JUN2011&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;100&lt;/P&gt;&lt;P&gt;8110&amp;nbsp; &amp;nbsp; &amp;nbsp; 45987&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 31JUL2011&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;100&lt;/P&gt;&lt;P&gt;8110&amp;nbsp; &amp;nbsp; &amp;nbsp; 45987&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 31AUG2011&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;100&lt;/P&gt;&lt;P&gt;8110&amp;nbsp; &amp;nbsp; &amp;nbsp; 45987&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 30SEP2011&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;100&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Ideas how to do this?&lt;/P&gt;</description>
    <pubDate>Thu, 20 Jun 2019 07:34:20 GMT</pubDate>
    <dc:creator>rhapsody</dc:creator>
    <dc:date>2019-06-20T07:34:20Z</dc:date>
    <item>
      <title>Use previous value if the date is missing</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Use-previous-value-if-the-date-is-missing/m-p/567166#M159463</link>
      <description>&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I have table with many id1 and id2 pairs&lt;/P&gt;&lt;P&gt;id1&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; id2&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; date&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;value&lt;/P&gt;&lt;P&gt;7899&amp;nbsp; &amp;nbsp; &amp;nbsp; 11774&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 31MAR2010&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 10&lt;/P&gt;&lt;P&gt;7899&amp;nbsp; &amp;nbsp; &amp;nbsp; 11774&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 30APR2010&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;20&lt;/P&gt;&lt;P&gt;7899&amp;nbsp; &amp;nbsp; &amp;nbsp; 11774&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;30JUN2010&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;40&lt;/P&gt;&lt;P&gt;7899&amp;nbsp; &amp;nbsp; &amp;nbsp; 11774&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 31AUG2010&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 60&lt;/P&gt;&lt;P&gt;8110&amp;nbsp; &amp;nbsp; &amp;nbsp; 45987&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 31DEC2010&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;100&lt;/P&gt;&lt;P&gt;......&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Then I want to add 10 months for every&amp;nbsp;id1 and id2 pair from the starting date and on. If a value is missing I want it to use the previous months value. The resulting table will then look like this.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;id1&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; id2&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; date&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;value&lt;/P&gt;&lt;P&gt;7899&amp;nbsp; &amp;nbsp; &amp;nbsp; 11774&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 31MAR2010&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 10&lt;/P&gt;&lt;P&gt;7899&amp;nbsp; &amp;nbsp; &amp;nbsp; 11774&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 30APR2010&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;20&lt;/P&gt;&lt;P&gt;7899&amp;nbsp; &amp;nbsp; &amp;nbsp; 11774&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 31MAY2010&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;20&lt;/P&gt;&lt;P&gt;7899&amp;nbsp; &amp;nbsp; &amp;nbsp; 11774&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;30JUN2010&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;40&lt;/P&gt;&lt;P&gt;7899&amp;nbsp; &amp;nbsp; &amp;nbsp; 11774&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;31JUL2010&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;40&lt;/P&gt;&lt;P&gt;7899&amp;nbsp; &amp;nbsp; &amp;nbsp; 11774&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 31AUG2010&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 60&lt;/P&gt;&lt;P&gt;7899&amp;nbsp; &amp;nbsp; &amp;nbsp; 11774&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 30SEP2010&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 60&lt;/P&gt;&lt;P&gt;7899&amp;nbsp; &amp;nbsp; &amp;nbsp; 11774&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 31OKT2010&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 60&lt;/P&gt;&lt;P&gt;7899&amp;nbsp; &amp;nbsp; &amp;nbsp; 11774&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 30NOV2010&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 60&lt;/P&gt;&lt;P&gt;7899&amp;nbsp; &amp;nbsp; &amp;nbsp; 11774&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 31DEC2010&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 60&lt;/P&gt;&lt;P&gt;8110&amp;nbsp; &amp;nbsp; &amp;nbsp; 45987&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 31DEC2010&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;100&lt;/P&gt;&lt;P&gt;8110&amp;nbsp; &amp;nbsp; &amp;nbsp; 45987&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 31JAN2011&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;100&lt;/P&gt;&lt;P&gt;8110&amp;nbsp; &amp;nbsp; &amp;nbsp; 45987&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 28FEB2011&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;100&lt;/P&gt;&lt;P&gt;8110&amp;nbsp; &amp;nbsp; &amp;nbsp; 45987&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 31MAR2011&amp;nbsp; &amp;nbsp; &amp;nbsp; 100&lt;/P&gt;&lt;P&gt;8110&amp;nbsp; &amp;nbsp; &amp;nbsp; 45987&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 30APR2011&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;100&lt;/P&gt;&lt;P&gt;8110&amp;nbsp; &amp;nbsp; &amp;nbsp; 45987&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 31MAY2011&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;100&lt;/P&gt;&lt;P&gt;8110&amp;nbsp; &amp;nbsp; &amp;nbsp; 45987&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 30JUN2011&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;100&lt;/P&gt;&lt;P&gt;8110&amp;nbsp; &amp;nbsp; &amp;nbsp; 45987&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 31JUL2011&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;100&lt;/P&gt;&lt;P&gt;8110&amp;nbsp; &amp;nbsp; &amp;nbsp; 45987&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 31AUG2011&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;100&lt;/P&gt;&lt;P&gt;8110&amp;nbsp; &amp;nbsp; &amp;nbsp; 45987&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 30SEP2011&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;100&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Ideas how to do this?&lt;/P&gt;</description>
      <pubDate>Thu, 20 Jun 2019 07:34:20 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Use-previous-value-if-the-date-is-missing/m-p/567166#M159463</guid>
      <dc:creator>rhapsody</dc:creator>
      <dc:date>2019-06-20T07:34:20Z</dc:date>
    </item>
    <item>
      <title>Re: Use previous value if the date is missing</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Use-previous-value-if-the-date-is-missing/m-p/567175#M159465</link>
      <description>&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data have;
input id1  id2 date:date9.  value;
cards;
7899 11774 31MAR2010 10
7899 11774 30APR2010 20
899  11774 30JUN2010 40
7899 11774 31AUG2010 60
8110 45987 31DEC2011 100
;
 
data want;
set have;
output;
if intnx('month',date,1,'e') ne . and intnx('month',date,1,'e') gt date then do;
date=intnx('month',date,1,'e');
output;
end;
format date date9.;
run;
 
proc sort data=want nodupkey;
by date;
run;
&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Wed, 19 Jun 2019 09:06:05 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Use-previous-value-if-the-date-is-missing/m-p/567175#M159465</guid>
      <dc:creator>Jagadishkatam</dc:creator>
      <dc:date>2019-06-19T09:06:05Z</dc:date>
    </item>
    <item>
      <title>Re: Use previous value if the date is missing</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Use-previous-value-if-the-date-is-missing/m-p/567227#M159487</link>
      <description>&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data have;
input id1  id2 date:date9.  value;
format date date9.;
cards;
7899      11774        31MAR2010        10
7899      11774        30APR2010         20
7899      11774        30JUN2010         40
7899      11774        31AUG2010        60
8110      45987        31DEC2011       100
;

data want;
 merge have have(keep=id1 id2 date 
 rename=(id1=_id1 id2=_id2 date=_date) firstobs=2);
 output;
 if id1=_id1 and id2=_id2 then do;
   do i=1 to intck('month',date,_date)-1;
    date=intnx('month',date,1,'e');output;
   end;
 end;
 drop _: i;
run;&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Wed, 19 Jun 2019 12:40:24 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Use-previous-value-if-the-date-is-missing/m-p/567227#M159487</guid>
      <dc:creator>Ksharp</dc:creator>
      <dc:date>2019-06-19T12:40:24Z</dc:date>
    </item>
    <item>
      <title>Re: Use previous value if the date is missing</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Use-previous-value-if-the-date-is-missing/m-p/567546#M159610</link>
      <description>&lt;P&gt;Almost but I suppose I wasn't clear about one important thing. I want to be able to set how many time periods to extrapolate. I wrote in my example 10 months. But this I want to be able to change to let's say 20, 40 or whatever. So for the 10 month example, the result should look like this.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;The have table&lt;/P&gt;&lt;P&gt;I have table with many id1 and id2 pairs&lt;/P&gt;&lt;P&gt;id1&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; id2&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; date&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;value&lt;/P&gt;&lt;P&gt;7899&amp;nbsp; &amp;nbsp; &amp;nbsp; 11774&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 31MAR2010&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 10&lt;/P&gt;&lt;P&gt;7899&amp;nbsp; &amp;nbsp; &amp;nbsp; 11774&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 30APR2010&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;20&lt;/P&gt;&lt;P&gt;7899&amp;nbsp; &amp;nbsp; &amp;nbsp; 11774&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;30JUN2010&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;40&lt;/P&gt;&lt;P&gt;7899&amp;nbsp; &amp;nbsp; &amp;nbsp; 11774&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 31AUG2010&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 60&lt;/P&gt;&lt;P&gt;8110&amp;nbsp; &amp;nbsp; &amp;nbsp; 45987&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 31DEC2010&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;100&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;The resulting table&lt;/P&gt;&lt;P&gt;id1&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; id2&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; date&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;value&lt;/P&gt;&lt;P&gt;7899&amp;nbsp; &amp;nbsp; &amp;nbsp; 11774&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 31MAR2010&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 10&lt;/P&gt;&lt;P&gt;7899&amp;nbsp; &amp;nbsp; &amp;nbsp; 11774&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 30APR2010&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;20&lt;/P&gt;&lt;P&gt;7899&amp;nbsp; &amp;nbsp; &amp;nbsp; 11774&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 31MAY2010&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;20&lt;/P&gt;&lt;P&gt;7899&amp;nbsp; &amp;nbsp; &amp;nbsp; 11774&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;30JUN2010&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;40&lt;/P&gt;&lt;P&gt;7899&amp;nbsp; &amp;nbsp; &amp;nbsp; 11774&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;31JUL2010&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;40&lt;/P&gt;&lt;P&gt;7899&amp;nbsp; &amp;nbsp; &amp;nbsp; 11774&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 31AUG2010&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 60&lt;/P&gt;&lt;P&gt;7899&amp;nbsp; &amp;nbsp; &amp;nbsp; 11774&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 30SEP2010&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 60&lt;/P&gt;&lt;P&gt;7899&amp;nbsp; &amp;nbsp; &amp;nbsp; 11774&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 31OKT2010&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 60&lt;/P&gt;&lt;P&gt;7899&amp;nbsp; &amp;nbsp; &amp;nbsp; 11774&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 30NOV2010&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 60&lt;/P&gt;&lt;P&gt;7899&amp;nbsp; &amp;nbsp; &amp;nbsp; 11774&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 31DEC2010&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 60&lt;/P&gt;&lt;P&gt;8110&amp;nbsp; &amp;nbsp; &amp;nbsp; 45987&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 31DEC2010&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;100&lt;/P&gt;&lt;P&gt;8110&amp;nbsp; &amp;nbsp; &amp;nbsp; 45987&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 31JAN2011&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;100&lt;/P&gt;&lt;P&gt;8110&amp;nbsp; &amp;nbsp; &amp;nbsp; 45987&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 28FEB2011&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;100&lt;/P&gt;&lt;P&gt;8110&amp;nbsp; &amp;nbsp; &amp;nbsp; 45987&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 31MAR2011&amp;nbsp; &amp;nbsp; &amp;nbsp; 100&lt;/P&gt;&lt;P&gt;8110&amp;nbsp; &amp;nbsp; &amp;nbsp; 45987&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 30APR2011&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;100&lt;/P&gt;&lt;P&gt;8110&amp;nbsp; &amp;nbsp; &amp;nbsp; 45987&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 31MAY2011&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;100&lt;/P&gt;&lt;P&gt;8110&amp;nbsp; &amp;nbsp; &amp;nbsp; 45987&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 30JUN2011&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;100&lt;/P&gt;&lt;P&gt;8110&amp;nbsp; &amp;nbsp; &amp;nbsp; 45987&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 31JUL2011&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;100&lt;/P&gt;&lt;P&gt;8110&amp;nbsp; &amp;nbsp; &amp;nbsp; 45987&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 31AUG2011&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;100&lt;/P&gt;&lt;P&gt;8110&amp;nbsp; &amp;nbsp; &amp;nbsp; 45987&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 30SEP2011&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;100&lt;/P&gt;</description>
      <pubDate>Thu, 20 Jun 2019 07:33:01 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Use-previous-value-if-the-date-is-missing/m-p/567546#M159610</guid>
      <dc:creator>rhapsody</dc:creator>
      <dc:date>2019-06-20T07:33:01Z</dc:date>
    </item>
    <item>
      <title>Re: Use previous value if the date is missing</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Use-previous-value-if-the-date-is-missing/m-p/567547#M159611</link>
      <description>&lt;P&gt;Sorry, but I made a small typing error, for the 10 months example (the 10 should be easily changed if required in the code) the results looks like this.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;The resulting table&lt;/P&gt;&lt;P&gt;id1&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; id2&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; date&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;value&lt;/P&gt;&lt;P&gt;7899&amp;nbsp; &amp;nbsp; &amp;nbsp; 11774&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 31MAR2010&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 10&lt;/P&gt;&lt;P&gt;7899&amp;nbsp; &amp;nbsp; &amp;nbsp; 11774&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 30APR2010&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;20&lt;/P&gt;&lt;P&gt;7899&amp;nbsp; &amp;nbsp; &amp;nbsp; 11774&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 31MAY2010&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;20&lt;/P&gt;&lt;P&gt;7899&amp;nbsp; &amp;nbsp; &amp;nbsp; 11774&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;30JUN2010&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;40&lt;/P&gt;&lt;P&gt;7899&amp;nbsp; &amp;nbsp; &amp;nbsp; 11774&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;31JUL2010&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;40&lt;/P&gt;&lt;P&gt;7899&amp;nbsp; &amp;nbsp; &amp;nbsp; 11774&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 31AUG2010&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 60&lt;/P&gt;&lt;P&gt;7899&amp;nbsp; &amp;nbsp; &amp;nbsp; 11774&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 30SEP2010&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 60&lt;/P&gt;&lt;P&gt;7899&amp;nbsp; &amp;nbsp; &amp;nbsp; 11774&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 31OKT2010&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 60&lt;/P&gt;&lt;P&gt;7899&amp;nbsp; &amp;nbsp; &amp;nbsp; 11774&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 30NOV2010&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 60&lt;/P&gt;&lt;P&gt;7899&amp;nbsp; &amp;nbsp; &amp;nbsp; 11774&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 31DEC2010&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 60&lt;/P&gt;&lt;P&gt;8110&amp;nbsp; &amp;nbsp; &amp;nbsp; 45987&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 31DEC2010&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;100&lt;/P&gt;&lt;P&gt;8110&amp;nbsp; &amp;nbsp; &amp;nbsp; 45987&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 31JAN2011&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;100&lt;/P&gt;&lt;P&gt;8110&amp;nbsp; &amp;nbsp; &amp;nbsp; 45987&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 28FEB2011&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;100&lt;/P&gt;&lt;P&gt;8110&amp;nbsp; &amp;nbsp; &amp;nbsp; 45987&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 31MAR2011&amp;nbsp; &amp;nbsp; &amp;nbsp; 100&lt;/P&gt;&lt;P&gt;8110&amp;nbsp; &amp;nbsp; &amp;nbsp; 45987&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 30APR2011&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;100&lt;/P&gt;&lt;P&gt;8110&amp;nbsp; &amp;nbsp; &amp;nbsp; 45987&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 31MAY2011&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;100&lt;/P&gt;&lt;P&gt;8110&amp;nbsp; &amp;nbsp; &amp;nbsp; 45987&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 30JUN2011&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;100&lt;/P&gt;&lt;P&gt;8110&amp;nbsp; &amp;nbsp; &amp;nbsp; 45987&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 31JUL2011&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;100&lt;/P&gt;&lt;P&gt;8110&amp;nbsp; &amp;nbsp; &amp;nbsp; 45987&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 31AUG2011&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;100&lt;/P&gt;&lt;P&gt;8110&amp;nbsp; &amp;nbsp; &amp;nbsp; 45987&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 30SEP2011&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;100&lt;/P&gt;</description>
      <pubDate>Thu, 20 Jun 2019 07:29:26 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Use-previous-value-if-the-date-is-missing/m-p/567547#M159611</guid>
      <dc:creator>rhapsody</dc:creator>
      <dc:date>2019-06-20T07:29:26Z</dc:date>
    </item>
    <item>
      <title>Re: Use previous value if the date is missing</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Use-previous-value-if-the-date-is-missing/m-p/567589#M159629</link>
      <description>&lt;P&gt;That would be more simple.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data have;
input id1  id2 date : date9.  value;
format date date9.;
cards;
7899      11774        31MAR2010        10
7899      11774        30APR2010         20
7899      11774        30JUN2010         40
7899      11774        31AUG2010        60
8110      45987        31DEC2010       100
;

%let n=10;

proc summary data=have ;
by id1 id2;
var date;
output out=temp min=;
run;

data temp1;
 set temp;
 output;
 do i=1 to %eval(&amp;amp;n-1);
  date=intnx('month',date,1,'e');output;
 end;
 drop i _: ;
run;
data want;
 merge temp1(in=ina) have;
 by id1 id2 date;
 retain new_value;
 if first.id2 then call missing(new_value);
 if not missing(value) then new_value=value;
 if ina;
run;&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Thu, 20 Jun 2019 12:28:19 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Use-previous-value-if-the-date-is-missing/m-p/567589#M159629</guid>
      <dc:creator>Ksharp</dc:creator>
      <dc:date>2019-06-20T12:28:19Z</dc:date>
    </item>
  </channel>
</rss>

