<?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: Scenario on extracting rows by group in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/Scenario-on-extracting-rows-by-group/m-p/786318#M251034</link>
    <description>&lt;P&gt;So you want the minimum of the start_date and the maximum of the end_date for each grouping of the variables ID and UTP?&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Or do you want always the first row start_date and the last row end_date for each grouping of the variables ID and UTP?&lt;/P&gt;</description>
    <pubDate>Thu, 16 Dec 2021 17:01:16 GMT</pubDate>
    <dc:creator>PaigeMiller</dc:creator>
    <dc:date>2021-12-16T17:01:16Z</dc:date>
    <item>
      <title>Scenario on extracting rows by group</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Scenario-on-extracting-rows-by-group/m-p/786314#M251030</link>
      <description>&lt;P&gt;Hi All,&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I have the below scenario,&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="scenario.JPG" style="width: 623px;"&gt;&lt;img src="https://communities.sas.com/t5/image/serverpage/image-id/66792iCAA70322C35E9086/image-dimensions/623x256?v=v2" width="623" height="256" role="button" title="scenario.JPG" alt="scenario.JPG" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Input:&lt;/P&gt;
&lt;TABLE width="264"&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD width="64"&gt;ID&lt;/TD&gt;
&lt;TD width="64"&gt;utp&lt;/TD&gt;
&lt;TD width="68"&gt;start date&lt;/TD&gt;
&lt;TD width="68"&gt;end date&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;123&lt;/TD&gt;
&lt;TD&gt;0&lt;/TD&gt;
&lt;TD&gt;1/1/2021&lt;/TD&gt;
&lt;TD&gt;31/1/2021&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;123&lt;/TD&gt;
&lt;TD&gt;0&lt;/TD&gt;
&lt;TD&gt;1/2/2021&lt;/TD&gt;
&lt;TD&gt;10/3/2021&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;123&lt;/TD&gt;
&lt;TD&gt;0&lt;/TD&gt;
&lt;TD&gt;11/3/2021&lt;/TD&gt;
&lt;TD&gt;30/4/2021&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;123&lt;/TD&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;TD&gt;1/5/2021&lt;/TD&gt;
&lt;TD&gt;24/5/2021&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;123&lt;/TD&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;TD&gt;25/5/2021&lt;/TD&gt;
&lt;TD&gt;4/6/2021&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;123&lt;/TD&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;TD&gt;5/6/2021&lt;/TD&gt;
&lt;TD&gt;20/6/2021&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;123&lt;/TD&gt;
&lt;TD&gt;0&lt;/TD&gt;
&lt;TD&gt;21/6/2021&lt;/TD&gt;
&lt;TD&gt;1/7/2021&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;123&lt;/TD&gt;
&lt;TD&gt;0&lt;/TD&gt;
&lt;TD&gt;2/7/2021&lt;/TD&gt;
&lt;TD&gt;9/7/2021&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;123&lt;/TD&gt;
&lt;TD&gt;0&lt;/TD&gt;
&lt;TD&gt;10/7/2021&lt;/TD&gt;
&lt;TD&gt;21/7/2021&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;123&lt;/TD&gt;
&lt;TD&gt;0&lt;/TD&gt;
&lt;TD&gt;22/7/2021&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;14/8/2021&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;Output:&lt;/P&gt;
&lt;TABLE width="260"&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD width="64"&gt;ID&lt;/TD&gt;
&lt;TD width="64"&gt;utp&lt;/TD&gt;
&lt;TD width="68"&gt;start date&lt;/TD&gt;
&lt;TD width="64"&gt;end date&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;123&lt;/TD&gt;
&lt;TD&gt;0&lt;/TD&gt;
&lt;TD&gt;1/1/2021&lt;/TD&gt;
&lt;TD&gt;30/4/2021&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;123&lt;/TD&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;TD&gt;1/5/2021&lt;/TD&gt;
&lt;TD&gt;20/6/2021&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;123&lt;/TD&gt;
&lt;TD&gt;0&lt;/TD&gt;
&lt;TD&gt;21/6/2021&lt;/TD&gt;
&lt;TD&gt;14/8/2021&lt;/TD&gt;
&lt;/TR&gt;
&lt;/TBODY&gt;
&lt;/TABLE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Can anyone please suggest an approach to retreive the above output based on the prescribed input?&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Any suggestions are highly appreciable!!&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Thanks in advance!!&lt;/P&gt;</description>
      <pubDate>Thu, 16 Dec 2021 16:29:30 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Scenario-on-extracting-rows-by-group/m-p/786314#M251030</guid>
      <dc:creator>Vigneswar</dc:creator>
      <dc:date>2021-12-16T16:29:30Z</dc:date>
    </item>
    <item>
      <title>Re: Scenario on extracting rows by group</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Scenario-on-extracting-rows-by-group/m-p/786315#M251031</link>
      <description>&lt;P&gt;Please explain the logic that allows you to derive the output data from the input data.&lt;/P&gt;</description>
      <pubDate>Thu, 16 Dec 2021 16:33:00 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Scenario-on-extracting-rows-by-group/m-p/786315#M251031</guid>
      <dc:creator>PaigeMiller</dc:creator>
      <dc:date>2021-12-16T16:33:00Z</dc:date>
    </item>
    <item>
      <title>Re: Scenario on extracting rows by group</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Scenario-on-extracting-rows-by-group/m-p/786316#M251032</link>
      <description>&lt;BR /&gt;Hi, thanks for your response!!                                                                                                                                                                                       &lt;BR /&gt;&lt;BR /&gt;In this example, there are 3 combinations that need to be extracted. Within a ID group, there are 2 possible utp values and different start and end dates. Row 1 to 3, 4 to 6, 7 to 10 there are 3 combinations. So mainly I want to extract based on ID group, utp and dates. In my output (first row) ID 123 and utp 0 are combined with start date from 1st row and end date from 3rd row. Likewise, 2nd row in the output is combined with start date from 4th row and end date in 6th row. 3rd row in the output is combined with start date from 7th row and end date in 10th row.&lt;BR /&gt;&lt;BR /&gt;To summarize, we need extract based on (ID and utp) group and extract their start and end date from different rows. &lt;BR /&gt;&lt;BR /&gt;Please let me know if you need more clarity.</description>
      <pubDate>Thu, 16 Dec 2021 16:43:41 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Scenario-on-extracting-rows-by-group/m-p/786316#M251032</guid>
      <dc:creator>Vigneswar</dc:creator>
      <dc:date>2021-12-16T16:43:41Z</dc:date>
    </item>
    <item>
      <title>Re: Scenario on extracting rows by group</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Scenario-on-extracting-rows-by-group/m-p/786317#M251033</link>
      <description>&lt;P&gt;Use the NOTSORTED option on the BY statement.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data want;
set have;
retain start;

by id utp NOTSORTED;
if first.utp then Start = start_date;
if last.utp then do;
end = end_date;
output;
end;

format start end date9.;
drop start_date end_date;
run;
&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Thu, 16 Dec 2021 16:52:02 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Scenario-on-extracting-rows-by-group/m-p/786317#M251033</guid>
      <dc:creator>Reeza</dc:creator>
      <dc:date>2021-12-16T16:52:02Z</dc:date>
    </item>
    <item>
      <title>Re: Scenario on extracting rows by group</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Scenario-on-extracting-rows-by-group/m-p/786318#M251034</link>
      <description>&lt;P&gt;So you want the minimum of the start_date and the maximum of the end_date for each grouping of the variables ID and UTP?&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Or do you want always the first row start_date and the last row end_date for each grouping of the variables ID and UTP?&lt;/P&gt;</description>
      <pubDate>Thu, 16 Dec 2021 17:01:16 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Scenario-on-extracting-rows-by-group/m-p/786318#M251034</guid>
      <dc:creator>PaigeMiller</dc:creator>
      <dc:date>2021-12-16T17:01:16Z</dc:date>
    </item>
    <item>
      <title>Re: Scenario on extracting rows by group</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Scenario-on-extracting-rows-by-group/m-p/786334#M251045</link>
      <description>Thank you so much!!</description>
      <pubDate>Thu, 16 Dec 2021 17:52:07 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Scenario-on-extracting-rows-by-group/m-p/786334#M251045</guid>
      <dc:creator>Vigneswar</dc:creator>
      <dc:date>2021-12-16T17:52:07Z</dc:date>
    </item>
  </channel>
</rss>

