<?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 and last from group within group - intervals of time in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/First-and-last-from-group-within-group-intervals-of-time/m-p/624251#M183871</link>
    <description>&lt;P&gt;Thanks a lot !&amp;nbsp;&lt;img id="smileylol" class="emoticon emoticon-smileylol" src="https://communities.sas.com/i/smilies/16x16_smiley-lol.png" alt="Smiley LOL" title="Smiley LOL" /&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;It worked !!!&lt;/P&gt;</description>
    <pubDate>Wed, 12 Feb 2020 17:15:11 GMT</pubDate>
    <dc:creator>soraiapedp</dc:creator>
    <dc:date>2020-02-12T17:15:11Z</dc:date>
    <item>
      <title>First and last from group within group - intervals of time</title>
      <link>https://communities.sas.com/t5/SAS-Programming/First-and-last-from-group-within-group-intervals-of-time/m-p/624243#M183867</link>
      <description>&lt;P&gt;Hey guys!&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I need ur help please.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;So i have a tabel like the one in attachment.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;ANLAGE&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;OPERAND&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;AB&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; BIS&lt;/P&gt;&lt;P&gt;0010010527&amp;nbsp; &amp;nbsp;RT_EA_TSOC&amp;nbsp; &amp;nbsp;20181126&amp;nbsp; &amp;nbsp;20181221&lt;BR /&gt;0010010527&amp;nbsp; &amp;nbsp;RT_EA_TSOC&amp;nbsp; &amp;nbsp;20181222&amp;nbsp; &amp;nbsp;20190414&lt;BR /&gt;0010010527&amp;nbsp; &amp;nbsp;RT_EA_TSOC&amp;nbsp; &amp;nbsp;20190415&amp;nbsp; &amp;nbsp;20190511&lt;BR /&gt;0010010527&amp;nbsp; &amp;nbsp;RT_EA_TSOC&amp;nbsp; &amp;nbsp;20190610&amp;nbsp; &amp;nbsp;20190811&lt;BR /&gt;0010010527&amp;nbsp; &amp;nbsp;RT_EA_TSOC&amp;nbsp; &amp;nbsp;20190901&amp;nbsp; &amp;nbsp;20191001&lt;BR /&gt;0010010527&amp;nbsp; &amp;nbsp;RT_EA_TSOC&amp;nbsp; &amp;nbsp;20191002&amp;nbsp; &amp;nbsp;20191225&lt;BR /&gt;0010010527&amp;nbsp; &amp;nbsp;RT_EA_TSOC&amp;nbsp; &amp;nbsp;20200101&amp;nbsp; &amp;nbsp;99991231&lt;BR /&gt;0010010588&amp;nbsp; &amp;nbsp;RT_EA_TSOC&amp;nbsp; &amp;nbsp;20181126&amp;nbsp; &amp;nbsp;20181221&lt;BR /&gt;0010010588&amp;nbsp; &amp;nbsp;RT_EA_TSOC&amp;nbsp; &amp;nbsp;20181229&amp;nbsp; &amp;nbsp;20190414&lt;BR /&gt;0010010588&amp;nbsp; &amp;nbsp;RT_EA_TSOC&amp;nbsp; &amp;nbsp;20190415&amp;nbsp; &amp;nbsp;99991231&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;For each ANLAGE i want to obtain the time interval in just one, instead of divided by 2/3/... rows. EG.: for the anlage&amp;nbsp;0010010527 the first, second and third rows could be in just on time interval, because the AB of the second is right next to the BIS of the first one, and the AB of the third is right next to the BIS of the second.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I know this could be confusing, but for you to understand what i would like to obtain, here's the result to be:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;ANLAGE&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;OPERAND&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;AB&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; BIS&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; FINAL_AB&amp;nbsp; &amp;nbsp;FINAL_BIS&lt;/P&gt;&lt;P&gt;0010010527&amp;nbsp; &amp;nbsp;RT_EA_TSOC&amp;nbsp; &amp;nbsp;20181126&amp;nbsp; &amp;nbsp;20181221&amp;nbsp; &amp;nbsp;20181126&amp;nbsp; &amp;nbsp; 20190511&lt;BR /&gt;0010010527&amp;nbsp; &amp;nbsp;RT_EA_TSOC&amp;nbsp; &amp;nbsp;20181222&amp;nbsp; &amp;nbsp;20190414&amp;nbsp; &amp;nbsp;20181126&amp;nbsp; &amp;nbsp; 20190511&lt;BR /&gt;0010010527&amp;nbsp; &amp;nbsp;RT_EA_TSOC&amp;nbsp; &amp;nbsp;20190415&amp;nbsp; &amp;nbsp;20190511&amp;nbsp; &amp;nbsp;20181126&amp;nbsp; &amp;nbsp; 20190511&lt;BR /&gt;0010010527&amp;nbsp; &amp;nbsp;RT_EA_TSOC&amp;nbsp; &amp;nbsp;20190610&amp;nbsp; &amp;nbsp;20190811&amp;nbsp; &amp;nbsp;20190610&amp;nbsp; &amp;nbsp; 20190811&lt;BR /&gt;0010010527&amp;nbsp; &amp;nbsp;RT_EA_TSOC&amp;nbsp; &amp;nbsp;20190901&amp;nbsp; &amp;nbsp;20191001&amp;nbsp; &amp;nbsp;20190901&amp;nbsp; &amp;nbsp; 20191225&lt;BR /&gt;0010010527&amp;nbsp; &amp;nbsp;RT_EA_TSOC&amp;nbsp; &amp;nbsp;20191002&amp;nbsp; &amp;nbsp;20191225&amp;nbsp; &amp;nbsp;20190901&amp;nbsp; &amp;nbsp; 20191225&lt;BR /&gt;0010010527&amp;nbsp; &amp;nbsp;RT_EA_TSOC&amp;nbsp; &amp;nbsp;20200101&amp;nbsp; &amp;nbsp;99991231&amp;nbsp; &amp;nbsp;20200101&amp;nbsp; &amp;nbsp;&amp;nbsp;99991231&lt;BR /&gt;0010010588&amp;nbsp; &amp;nbsp;RT_EA_TSOC&amp;nbsp; &amp;nbsp;20181126&amp;nbsp; &amp;nbsp;20181221&amp;nbsp; &amp;nbsp;20181126&amp;nbsp; &amp;nbsp;&amp;nbsp;20181221&lt;BR /&gt;0010010588&amp;nbsp; &amp;nbsp;RT_EA_TSOC&amp;nbsp; &amp;nbsp;20181229&amp;nbsp; &amp;nbsp;20190414&amp;nbsp; &amp;nbsp;20181229&amp;nbsp; &amp;nbsp; 99991231&lt;BR /&gt;0010010588&amp;nbsp; &amp;nbsp;RT_EA_TSOC&amp;nbsp; &amp;nbsp;20190415&amp;nbsp; &amp;nbsp;99991231&amp;nbsp; &amp;nbsp; 20181229&amp;nbsp; &amp;nbsp;99991231&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;HELP PLS &lt;span class="lia-unicode-emoji" title=":slightly_smiling_face:"&gt;🙂&lt;/span&gt;&lt;/P&gt;</description>
      <pubDate>Wed, 12 Feb 2020 16:39:44 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/First-and-last-from-group-within-group-intervals-of-time/m-p/624243#M183867</guid>
      <dc:creator>soraiapedp</dc:creator>
      <dc:date>2020-02-12T16:39:44Z</dc:date>
    </item>
    <item>
      <title>Re: First and last from group within group - intervals of time</title>
      <link>https://communities.sas.com/t5/SAS-Programming/First-and-last-from-group-within-group-intervals-of-time/m-p/624244#M183868</link>
      <description>&lt;P&gt;This has been asked many times.&lt;/P&gt;
&lt;P&gt;Here is link to one example:&amp;nbsp;&amp;nbsp;&lt;A href="https://communities.sas.com/t5/SAS-Programming/Collapsing-Dates-across-rows-of-observations-with-a-twist/td-p/412951" target="_blank"&gt;https://communities.sas.com/t5/SAS-Programming/Collapsing-Dates-across-rows-of-observations-with-a-twist/td-p/412951&lt;/A&gt;&lt;/P&gt;</description>
      <pubDate>Wed, 12 Feb 2020 16:44:29 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/First-and-last-from-group-within-group-intervals-of-time/m-p/624244#M183868</guid>
      <dc:creator>Tom</dc:creator>
      <dc:date>2020-02-12T16:44:29Z</dc:date>
    </item>
    <item>
      <title>Re: First and last from group within group - intervals of time</title>
      <link>https://communities.sas.com/t5/SAS-Programming/First-and-last-from-group-within-group-intervals-of-time/m-p/624247#M183869</link>
      <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/311851"&gt;@soraiapedp&lt;/a&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Here is an attempt to achieve this:&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data have;
	input ANLAGE OPERAND $ AB:YYMMDD10. BIS:YYMMDD10.;
	format AB BIS YYMMDD10.;
	datalines;
0010010527   RT_EA_TSOC   20181126   20181221
0010010527   RT_EA_TSOC   20181222   20190414
0010010527   RT_EA_TSOC   20190415   20190511
0010010527   RT_EA_TSOC   20190610   20190811
0010010527   RT_EA_TSOC   20190901   20191001
0010010527   RT_EA_TSOC   20191002   20191225
0010010527   RT_EA_TSOC   20200101   99991231
0010010588   RT_EA_TSOC   20181126   20181221
0010010588   RT_EA_TSOC   20181229   20190414
0010010588   RT_EA_TSOC   20190415   99991231
;
run;

data have_flag;
	set have;
	by ANLAGE;
	format _lag_BIS YYMMDD10.;
	_lag_BIS = lag(BIS) + 1;
	if first.ANLAGE then call missing(_lag_BIS);
	if AB ne _lag_BIS then count+1;
run;

proc sql;
	create table want as
	select ANLAGE, OPERAND, AB, BIS,
		   min(AB) as FINAL_AB format=YYMMDD10.,
		   max (BIS) as FINAL_BIS format=YYMMDD10.
	from have_flag
	group by ANLAGE, count
	order by ANLAGE, AB;
run;&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Wed, 12 Feb 2020 16:59:29 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/First-and-last-from-group-within-group-intervals-of-time/m-p/624247#M183869</guid>
      <dc:creator>ed_sas_member</dc:creator>
      <dc:date>2020-02-12T16:59:29Z</dc:date>
    </item>
    <item>
      <title>Re: First and last from group within group - intervals of time</title>
      <link>https://communities.sas.com/t5/SAS-Programming/First-and-last-from-group-within-group-intervals-of-time/m-p/624251#M183871</link>
      <description>&lt;P&gt;Thanks a lot !&amp;nbsp;&lt;img id="smileylol" class="emoticon emoticon-smileylol" src="https://communities.sas.com/i/smilies/16x16_smiley-lol.png" alt="Smiley LOL" title="Smiley LOL" /&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;It worked !!!&lt;/P&gt;</description>
      <pubDate>Wed, 12 Feb 2020 17:15:11 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/First-and-last-from-group-within-group-intervals-of-time/m-p/624251#M183871</guid>
      <dc:creator>soraiapedp</dc:creator>
      <dc:date>2020-02-12T17:15:11Z</dc:date>
    </item>
  </channel>
</rss>

