<?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: By group on 3 variables , unable to get output as required. in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/By-group-on-3-variables-unable-to-get-output-as-required/m-p/908606#M358545</link>
    <description>&lt;P&gt;Thank you Tom. This solution works great.&lt;/P&gt;</description>
    <pubDate>Mon, 18 Dec 2023 13:57:12 GMT</pubDate>
    <dc:creator>HariGaggara</dc:creator>
    <dc:date>2023-12-18T13:57:12Z</dc:date>
    <item>
      <title>By group on 3 variables , unable to get output as required.</title>
      <link>https://communities.sas.com/t5/SAS-Programming/By-group-on-3-variables-unable-to-get-output-as-required/m-p/908114#M358406</link>
      <description>&lt;P&gt;I sample input data looks like below after sorting for a SAS data set.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Id&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;status&lt;/P&gt;&lt;P&gt;9212&amp;nbsp; &amp;nbsp; 12/01/2021&amp;nbsp; &amp;nbsp; &amp;nbsp;LC&lt;/P&gt;&lt;P&gt;9212&amp;nbsp; &amp;nbsp; 03/01/2022&amp;nbsp; &amp;nbsp; LC&lt;/P&gt;&lt;P&gt;9212&amp;nbsp; &amp;nbsp; 05/01/2022&amp;nbsp; &amp;nbsp; LC&lt;/P&gt;&lt;P&gt;9212&amp;nbsp; &amp;nbsp; 06/01/2022&amp;nbsp; &amp;nbsp; CC&lt;/P&gt;&lt;P&gt;6083&amp;nbsp; &amp;nbsp; 12/01/2023&amp;nbsp; &amp;nbsp; &amp;nbsp;LC&lt;/P&gt;&lt;P&gt;8228&amp;nbsp; &amp;nbsp; 12/012023&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;LC&lt;/P&gt;&lt;P&gt;8228&amp;nbsp; &amp;nbsp; 03/01/2022&amp;nbsp; &amp;nbsp; LC&lt;/P&gt;&lt;P&gt;8228&amp;nbsp; &amp;nbsp; 06/01/2022&amp;nbsp; &amp;nbsp; CC&lt;/P&gt;&lt;P&gt;7756&amp;nbsp; &amp;nbsp; 02/01/2023&amp;nbsp; &amp;nbsp; FC&lt;/P&gt;&lt;P&gt;7756&amp;nbsp; &amp;nbsp; 06/01/2023&amp;nbsp; &amp;nbsp; FC&lt;/P&gt;&lt;P&gt;7756&amp;nbsp; &amp;nbsp; 07 /01/2023&amp;nbsp; &amp;nbsp;FC&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Want to have out put as below. 12/01/9999 is a default date.&lt;/P&gt;&lt;P&gt;Id&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;status&amp;nbsp; &amp;nbsp; In_date&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; out_date&lt;/P&gt;&lt;P&gt;9212&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;LC&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 12/01/2021&amp;nbsp; &amp;nbsp; &amp;nbsp; 06/01/2022&lt;/P&gt;&lt;P&gt;9212&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; CC&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;06/01/2022&amp;nbsp; &amp;nbsp; &amp;nbsp;12/01/9999&lt;/P&gt;&lt;P&gt;6083&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;LC&amp;nbsp; &amp;nbsp; &amp;nbsp; 12/01/2023&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;12/01/9999&lt;/P&gt;&lt;P&gt;8228&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; LC&amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;12/012023&amp;nbsp; &amp;nbsp; &amp;nbsp; 06/01/2022&amp;nbsp;&lt;/P&gt;&lt;P&gt;8228&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; CC&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;06/01/2022&amp;nbsp; &amp;nbsp;&amp;nbsp;12/01/9999&lt;/P&gt;&lt;P&gt;7756&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; FC&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;02/01/2023&amp;nbsp; &amp;nbsp; &amp;nbsp;12/01/9999&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Please help to code in data SAS script.&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thanks in advance for the help.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 14 Dec 2023 21:27:15 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/By-group-on-3-variables-unable-to-get-output-as-required/m-p/908114#M358406</guid>
      <dc:creator>HariGaggara</dc:creator>
      <dc:date>2023-12-14T21:27:15Z</dc:date>
    </item>
    <item>
      <title>Re: By group on 3 variables , unable to get output as required.</title>
      <link>https://communities.sas.com/t5/SAS-Programming/By-group-on-3-variables-unable-to-get-output-as-required/m-p/908119#M358409</link>
      <description>&lt;P&gt;To get the date from the NEXT record is a little difficult.&lt;/P&gt;
&lt;P&gt;One way is to read the dataset twice, once starting with the second record.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;You can use the NOTSORTED option on the BY statement to process by ID and STATUS even when the values of STATUS are only grouped and not sorted.&lt;/P&gt;
&lt;P&gt;If you are going to use a made up date at least set it to the end of the year.&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data have;
  input Id date :yymmdd. status $;
  format date yymmdd10.;
cards;
9212 2021-12-01 LC
9212 2022-03-01 LC
9212 2022-05-01 LC
9212 2022-06-01 CC
6083 2023-12-01 LC
8228 2023-12-01 LC
8228 2022-03-01 LC
8228 2022-06-01 CC
7756 2023-02-01 FC
7756 2023-06-01 FC
7756 2023-07-01 FC
;

data want;
  set have;
  by id status notsorted;
  format in_date out_date yymmdd10.;
  retain in_date;
  set have(firstobs=2 keep=date rename=(date=out_date)) have(obs=1 drop=_all_);
  if first.status then in_date=date;
  if last.status;
  if last.id then out_date='31dec9999'd ;
  drop date;
run;

proc print;
run;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;Result&lt;/P&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Tom_0-1702591462637.png" style="width: 400px;"&gt;&lt;img src="https://communities.sas.com/t5/image/serverpage/image-id/91428iE6E9003C902398AC/image-size/medium?v=v2&amp;amp;px=400" role="button" title="Tom_0-1702591462637.png" alt="Tom_0-1702591462637.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 14 Dec 2023 22:04:30 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/By-group-on-3-variables-unable-to-get-output-as-required/m-p/908119#M358409</guid>
      <dc:creator>Tom</dc:creator>
      <dc:date>2023-12-14T22:04:30Z</dc:date>
    </item>
    <item>
      <title>Re: By group on 3 variables , unable to get output as required.</title>
      <link>https://communities.sas.com/t5/SAS-Programming/By-group-on-3-variables-unable-to-get-output-as-required/m-p/908123#M358412</link>
      <description>&lt;P&gt;Thank you Tom for your help and quick response.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I want to have out_date of id 9212 as&amp;nbsp;2022-06-01 for first entry which is the in_date of second entry.&lt;/P&gt;&lt;P&gt;and out_date of second entry should be default date if there is no status.&lt;/P&gt;&lt;P&gt;Id 6083 should have out_date as default date as there is no next status.&lt;/P&gt;&lt;P&gt;Appreciate your help.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 14 Dec 2023 22:21:04 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/By-group-on-3-variables-unable-to-get-output-as-required/m-p/908123#M358412</guid>
      <dc:creator>HariGaggara</dc:creator>
      <dc:date>2023-12-14T22:21:04Z</dc:date>
    </item>
    <item>
      <title>Re: By group on 3 variables , unable to get output as required.</title>
      <link>https://communities.sas.com/t5/SAS-Programming/By-group-on-3-variables-unable-to-get-output-as-required/m-p/908606#M358545</link>
      <description>&lt;P&gt;Thank you Tom. This solution works great.&lt;/P&gt;</description>
      <pubDate>Mon, 18 Dec 2023 13:57:12 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/By-group-on-3-variables-unable-to-get-output-as-required/m-p/908606#M358545</guid>
      <dc:creator>HariGaggara</dc:creator>
      <dc:date>2023-12-18T13:57:12Z</dc:date>
    </item>
  </channel>
</rss>

