<?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: How to repeat value until the next value and then repeat that in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/How-to-repeat-value-until-the-next-value-and-then-repeat-that/m-p/367384#M87450</link>
    <description>&lt;P&gt;Another possibility that may be simpler and does not rely on dropping variables:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;data&lt;/STRONG&gt; new;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;set old;&lt;/P&gt;&lt;P&gt;length repdate 8;&lt;/P&gt;&lt;P&gt;retain repdate;&lt;/P&gt;&lt;P&gt;if _n_ = &lt;STRONG&gt;1&lt;/STRONG&gt; then do;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if date2 ne &lt;STRONG&gt;.&lt;/STRONG&gt; then repdate = date2;&lt;/P&gt;&lt;P&gt;end;&lt;/P&gt;&lt;P&gt;else do;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if date2 = &lt;STRONG&gt;.&lt;/STRONG&gt; then date2 = repdate;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else repdate = date2;&lt;/P&gt;&lt;P&gt;end;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;run&lt;/STRONG&gt;;&lt;/P&gt;</description>
    <pubDate>Thu, 15 Jun 2017 14:47:55 GMT</pubDate>
    <dc:creator>JohnSAScom</dc:creator>
    <dc:date>2017-06-15T14:47:55Z</dc:date>
    <item>
      <title>How to repeat value until the next value and then repeat that</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-to-repeat-value-until-the-next-value-and-then-repeat-that/m-p/367350#M87441</link>
      <description>&lt;P&gt;Hello,&lt;/P&gt;
&lt;P&gt;I would like to have a value repeated when the next line has a '.' and then when the next line has a value to start using that value to repeat. I've been trying a "If&amp;nbsp;x then do y" sort of thing and I cannot get it right.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;My data looks like this&lt;/P&gt;
&lt;TABLE width="267"&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD width="64"&gt;id&lt;/TD&gt;
&lt;TD width="64"&gt;Type&lt;/TD&gt;
&lt;TD width="68"&gt;date 1&amp;nbsp;&lt;/TD&gt;
&lt;TD width="71"&gt;date 2&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;TD&gt;a&lt;/TD&gt;
&lt;TD&gt;1/1/2016&lt;/TD&gt;
&lt;TD&gt;.&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;TD&gt;b&lt;/TD&gt;
&lt;TD&gt;1/4/2016&lt;/TD&gt;
&lt;TD&gt;1/4/2016&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;TD&gt;a&lt;/TD&gt;
&lt;TD&gt;5/4/2016&lt;/TD&gt;
&lt;TD&gt;&lt;STRONG&gt;.&lt;/STRONG&gt;&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;TD&gt;a&lt;/TD&gt;
&lt;TD&gt;6/7/2017&lt;/TD&gt;
&lt;TD&gt;&lt;STRONG&gt;.&lt;/STRONG&gt;&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;TD&gt;b&lt;/TD&gt;
&lt;TD&gt;6/8/2017&lt;/TD&gt;
&lt;TD&gt;6/8/2017&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;TD&gt;a&lt;/TD&gt;
&lt;TD&gt;6/10/2017&lt;/TD&gt;
&lt;TD&gt;&lt;STRONG&gt;.&lt;/STRONG&gt;&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;2&lt;/TD&gt;
&lt;TD&gt;a&lt;/TD&gt;
&lt;TD&gt;3/5/2012&lt;/TD&gt;
&lt;TD&gt;&lt;STRONG&gt;.&lt;/STRONG&gt;&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;2&lt;/TD&gt;
&lt;TD&gt;b&lt;/TD&gt;
&lt;TD&gt;4/5/2012&lt;/TD&gt;
&lt;TD&gt;4/5/2012&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;2&lt;/TD&gt;
&lt;TD&gt;b&lt;/TD&gt;
&lt;TD&gt;4/12/2012&lt;/TD&gt;
&lt;TD&gt;4/12/2012&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;2&lt;/TD&gt;
&lt;TD&gt;a&lt;/TD&gt;
&lt;TD&gt;4/15/2012&lt;/TD&gt;
&lt;TD&gt;&lt;STRONG&gt;.&lt;/STRONG&gt;&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;2&lt;/TD&gt;
&lt;TD&gt;b&lt;/TD&gt;
&lt;TD&gt;5/7/2014&lt;/TD&gt;
&lt;TD&gt;5/7/2014&lt;/TD&gt;
&lt;/TR&gt;
&lt;/TBODY&gt;
&lt;/TABLE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;And I want it to look like this&lt;/P&gt;
&lt;TABLE width="271"&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD width="64"&gt;id&lt;/TD&gt;
&lt;TD width="64"&gt;Type&lt;/TD&gt;
&lt;TD width="71"&gt;date 1&amp;nbsp;&lt;/TD&gt;
&lt;TD width="72"&gt;date 2&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;TD&gt;a&lt;/TD&gt;
&lt;TD&gt;1/1/2016&lt;/TD&gt;
&lt;TD&gt;.&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;TD&gt;b&lt;/TD&gt;
&lt;TD&gt;1/4/2016&lt;/TD&gt;
&lt;TD&gt;1/4/2016&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;TD&gt;a&lt;/TD&gt;
&lt;TD&gt;5/4/2016&lt;/TD&gt;
&lt;TD&gt;&lt;STRONG&gt;1/4/2016&lt;/STRONG&gt;&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;TD&gt;a&lt;/TD&gt;
&lt;TD&gt;6/7/2017&lt;/TD&gt;
&lt;TD&gt;&lt;STRONG&gt;1/4/2016&lt;/STRONG&gt;&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;TD&gt;b&lt;/TD&gt;
&lt;TD&gt;6/8/2017&lt;/TD&gt;
&lt;TD&gt;6/8/2017&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;TD&gt;a&lt;/TD&gt;
&lt;TD&gt;6/10/2017&lt;/TD&gt;
&lt;TD&gt;&lt;STRONG&gt;6/8/2017&lt;/STRONG&gt;&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;2&lt;/TD&gt;
&lt;TD&gt;a&lt;/TD&gt;
&lt;TD&gt;3/5/2012&lt;/TD&gt;
&lt;TD&gt;&lt;STRONG&gt;.&lt;/STRONG&gt;&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;2&lt;/TD&gt;
&lt;TD&gt;b&lt;/TD&gt;
&lt;TD&gt;4/5/2012&lt;/TD&gt;
&lt;TD&gt;4/5/2012&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;2&lt;/TD&gt;
&lt;TD&gt;b&lt;/TD&gt;
&lt;TD&gt;4/12/2012&lt;/TD&gt;
&lt;TD&gt;4/12/2012&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;2&lt;/TD&gt;
&lt;TD&gt;a&lt;/TD&gt;
&lt;TD&gt;4/15/2012&lt;/TD&gt;
&lt;TD&gt;&lt;STRONG&gt;4/12/2012&lt;/STRONG&gt;&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;2&lt;/TD&gt;
&lt;TD&gt;b&lt;/TD&gt;
&lt;TD&gt;5/7/2014&lt;/TD&gt;
&lt;TD&gt;5/7/2014&lt;/TD&gt;
&lt;/TR&gt;
&lt;/TBODY&gt;
&lt;/TABLE&gt;
&lt;P&gt;edit to show the first id 2 should have a '.' for date 2 not the date 2 from id 1.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Thank you!&lt;/P&gt;</description>
      <pubDate>Thu, 15 Jun 2017 14:29:38 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-to-repeat-value-until-the-next-value-and-then-repeat-that/m-p/367350#M87441</guid>
      <dc:creator>weweaw</dc:creator>
      <dc:date>2017-06-15T14:29:38Z</dc:date>
    </item>
    <item>
      <title>Re: How to repeat value until the next value and then repeat that</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-to-repeat-value-until-the-next-value-and-then-repeat-that/m-p/367357#M87443</link>
      <description>&lt;P&gt;may be something like this&lt;/P&gt;
&lt;PRE&gt;&lt;FONT face="Courier New" size="3"&gt;proc sort data =want;
by id ;
run;

data have;
set want;
by id;
retain newdate;
if ((first.id or last.id) or not (first.id or last.id )) and date2 ne . then newdate=date2;
date2=newdate;
format newdate date9.;
run;&lt;/FONT&gt;&lt;/PRE&gt;</description>
      <pubDate>Thu, 15 Jun 2017 13:41:57 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-to-repeat-value-until-the-next-value-and-then-repeat-that/m-p/367357#M87443</guid>
      <dc:creator>kiranv_</dc:creator>
      <dc:date>2017-06-15T13:41:57Z</dc:date>
    </item>
    <item>
      <title>Re: How to repeat value until the next value and then repeat that</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-to-repeat-value-until-the-next-value-and-then-repeat-that/m-p/367368#M87444</link>
      <description>&lt;P&gt;Perhaps simpler:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;data want;&lt;/P&gt;
&lt;P&gt;set have;&lt;/P&gt;
&lt;P&gt;by id;&lt;/P&gt;
&lt;P&gt;retain replacement_date;&lt;/P&gt;
&lt;P&gt;if first.id or date2 &amp;gt; . then replacement_date = date2;&lt;/P&gt;
&lt;P&gt;drop date2;&lt;/P&gt;
&lt;P&gt;rename replacement_date = date2;&lt;/P&gt;
&lt;P&gt;run;&lt;/P&gt;</description>
      <pubDate>Thu, 15 Jun 2017 13:56:17 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-to-repeat-value-until-the-next-value-and-then-repeat-that/m-p/367368#M87444</guid>
      <dc:creator>Astounding</dc:creator>
      <dc:date>2017-06-15T13:56:17Z</dc:date>
    </item>
    <item>
      <title>Re: How to repeat value until the next value and then repeat that</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-to-repeat-value-until-the-next-value-and-then-repeat-that/m-p/367384#M87450</link>
      <description>&lt;P&gt;Another possibility that may be simpler and does not rely on dropping variables:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;data&lt;/STRONG&gt; new;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;set old;&lt;/P&gt;&lt;P&gt;length repdate 8;&lt;/P&gt;&lt;P&gt;retain repdate;&lt;/P&gt;&lt;P&gt;if _n_ = &lt;STRONG&gt;1&lt;/STRONG&gt; then do;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if date2 ne &lt;STRONG&gt;.&lt;/STRONG&gt; then repdate = date2;&lt;/P&gt;&lt;P&gt;end;&lt;/P&gt;&lt;P&gt;else do;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if date2 = &lt;STRONG&gt;.&lt;/STRONG&gt; then date2 = repdate;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else repdate = date2;&lt;/P&gt;&lt;P&gt;end;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;run&lt;/STRONG&gt;;&lt;/P&gt;</description>
      <pubDate>Thu, 15 Jun 2017 14:47:55 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-to-repeat-value-until-the-next-value-and-then-repeat-that/m-p/367384#M87450</guid>
      <dc:creator>JohnSAScom</dc:creator>
      <dc:date>2017-06-15T14:47:55Z</dc:date>
    </item>
  </channel>
</rss>

