<?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: Timeseries data - subsetting in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/Timeseries-data-subsetting/m-p/190786#M35976</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thank you both for your suggestions &lt;img id="smileyhappy" class="emoticon emoticon-smileyhappy" src="https://communities.sas.com/i/smilies/16x16_smiley-happy.png" alt="Smiley Happy" title="Smiley Happy" /&gt;&amp;nbsp; &lt;BR /&gt;I solved the problem through changing format of the string to a date variable via the input function,&lt;/P&gt;&lt;P&gt;and then used the intck function + an extra variable to select the right interval.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;@PGstats I learned something new from you! Thanks&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;/Petter&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 21 May 2014 11:19:41 GMT</pubDate>
    <dc:creator>petterco</dc:creator>
    <dc:date>2014-05-21T11:19:41Z</dc:date>
    <item>
      <title>Timeseries data - subsetting</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Timeseries-data-subsetting/m-p/190782#M35972</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi. &lt;/P&gt;&lt;P&gt;I have a small problem with creating a dataset I need for an analysis. &lt;/P&gt;&lt;P&gt;Lets assume I have an ID variable&amp;nbsp; "serial", and two different string variables: - "period" in the form 201403&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - "period_renewed" in the same form&lt;/P&gt;&lt;P&gt;First what I want to do is to delete all data where period&amp;gt;period_renewed. &lt;/P&gt;&lt;P&gt;Further I want to keep only the observations from the last 6 periods from the point in time where period=period_renewed. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Someone out there might have a simple solution to this problem, but I'm completely blank as I'm quite new to using SAS. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Any feedback would be extremely welcome. &lt;img id="smileyhappy" class="emoticon emoticon-smileyhappy" src="https://communities.sas.com/i/smilies/16x16_smiley-happy.png" alt="Smiley Happy" title="Smiley Happy" /&gt; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;/petter &lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 23 Apr 2014 16:12:52 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Timeseries-data-subsetting/m-p/190782#M35972</guid>
      <dc:creator>petterco</dc:creator>
      <dc:date>2014-04-23T16:12:52Z</dc:date>
    </item>
    <item>
      <title>Re: Timeseries data - subsetting</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Timeseries-data-subsetting/m-p/190783#M35973</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;the following will create a dataset called subset that excludes anything where period&amp;gt;period_renewed:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data subset;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; set original;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if period&amp;gt;period_renewed then delete;&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;alternatively, you could use:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data subset;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; set original;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; where period&amp;lt;=period_renewed;&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;not really sure what you are asking for in the second part.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 20 May 2014 21:50:00 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Timeseries-data-subsetting/m-p/190783#M35973</guid>
      <dc:creator>Michelle</dc:creator>
      <dc:date>2014-05-20T21:50:00Z</dc:date>
    </item>
    <item>
      <title>Re: Timeseries data - subsetting</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Timeseries-data-subsetting/m-p/190784#M35974</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Assuming there are no duplicates :&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;proc sort data=have(where=( period&amp;lt;=period_renewed)) out=temp; by serial descending period; run;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;data want;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;i = 0;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;do until (last.serial);&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;nbsp; set temp; by serial;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;nbsp; i + 1;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;nbsp; if i &amp;lt;= 6 then output;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;nbsp; end;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;drop i;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;run;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;proc sort data=want; by serial period; run;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;(Untested)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PG&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 21 May 2014 01:45:28 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Timeseries-data-subsetting/m-p/190784#M35974</guid>
      <dc:creator>PGStats</dc:creator>
      <dc:date>2014-05-21T01:45:28Z</dc:date>
    </item>
    <item>
      <title>Re: Timeseries data - subsetting</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Timeseries-data-subsetting/m-p/190785#M35975</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Or perhaps, simpler:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;proc sort data=have; by serial period; run;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;data want;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;retain firstSerial;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;set temp; by serial;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;if first.serial then firstSerial = _n_;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;if period&amp;gt;=period_renewed then do;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;nbsp; do point = max(firstSerial, _n_ - 5) to _n_;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; set temp point=point;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; output;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; end;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;nbsp; firstSerial = constant('BIG');&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;nbsp; end;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;drop point firstSerial;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;run;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;(Untested)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PG&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 21 May 2014 03:19:23 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Timeseries-data-subsetting/m-p/190785#M35975</guid>
      <dc:creator>PGStats</dc:creator>
      <dc:date>2014-05-21T03:19:23Z</dc:date>
    </item>
    <item>
      <title>Re: Timeseries data - subsetting</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Timeseries-data-subsetting/m-p/190786#M35976</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thank you both for your suggestions &lt;img id="smileyhappy" class="emoticon emoticon-smileyhappy" src="https://communities.sas.com/i/smilies/16x16_smiley-happy.png" alt="Smiley Happy" title="Smiley Happy" /&gt;&amp;nbsp; &lt;BR /&gt;I solved the problem through changing format of the string to a date variable via the input function,&lt;/P&gt;&lt;P&gt;and then used the intck function + an extra variable to select the right interval.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;@PGstats I learned something new from you! Thanks&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;/Petter&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 21 May 2014 11:19:41 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Timeseries-data-subsetting/m-p/190786#M35976</guid>
      <dc:creator>petterco</dc:creator>
      <dc:date>2014-05-21T11:19:41Z</dc:date>
    </item>
  </channel>
</rss>

