<?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: Duplicate rows between a time period in transversal data in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/Duplicate-rows-between-a-time-period-in-transversal-data/m-p/609043#M177299</link>
    <description>Many thanks for your help</description>
    <pubDate>Tue, 03 Dec 2019 13:49:49 GMT</pubDate>
    <dc:creator>Ely</dc:creator>
    <dc:date>2019-12-03T13:49:49Z</dc:date>
    <item>
      <title>Duplicate rows between a time period in transversal data</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Duplicate-rows-between-a-time-period-in-transversal-data/m-p/607310#M176501</link>
      <description>&lt;P&gt;Hi everyone,&lt;/P&gt;&lt;P&gt;I am having a trouble when trying to derive monthly evolution of patients per line of treatment. I would like, for a period between 2016/01/01 and 2019/07/31, to split each patient information per month in order to be able to only keep the month on target.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;U&gt;&lt;STRONG&gt;Dataset&lt;/STRONG&gt;&lt;/U&gt;&lt;BR /&gt;Pat&amp;nbsp; &amp;nbsp;Poduct&amp;nbsp; &amp;nbsp;Line&amp;nbsp; &amp;nbsp;Line_first_date&amp;nbsp; &amp;nbsp;Line_end_date&lt;BR /&gt;1&amp;nbsp; &amp;nbsp;ProdA&amp;nbsp; &amp;nbsp;1&amp;nbsp; &amp;nbsp;16/12/2010&amp;nbsp; &amp;nbsp;23/02/2016&lt;BR /&gt;1&amp;nbsp; &amp;nbsp;ProdB&amp;nbsp; &amp;nbsp;2&amp;nbsp; &amp;nbsp;10/03/2016&amp;nbsp; &amp;nbsp;30/06/2017&lt;BR /&gt;1&amp;nbsp; &amp;nbsp;ProdC&amp;nbsp; &amp;nbsp;3&amp;nbsp; &amp;nbsp;18/09/2017&amp;nbsp; &amp;nbsp;20/01/2019&lt;BR /&gt;1&amp;nbsp; &amp;nbsp;ProdD&amp;nbsp; &amp;nbsp;4&amp;nbsp; &amp;nbsp;05/03/2019&amp;nbsp; &amp;nbsp;11/12/2019&lt;BR /&gt;&lt;BR /&gt;&lt;U&gt;&lt;STRONG&gt;Want&lt;/STRONG&gt; &lt;/U&gt;&lt;BR /&gt;Pat&amp;nbsp; &amp;nbsp;Month&amp;nbsp; &amp;nbsp;Month_start_date&amp;nbsp; &amp;nbsp;Month_end_date&amp;nbsp; &amp;nbsp;Product&amp;nbsp; &amp;nbsp;Line&lt;BR /&gt;1&amp;nbsp; &amp;nbsp;1&amp;nbsp; &amp;nbsp;01/01/2016&amp;nbsp; &amp;nbsp;31/01/2016&amp;nbsp; &amp;nbsp;ProdA&amp;nbsp; &amp;nbsp;1&lt;BR /&gt;1&amp;nbsp; &amp;nbsp;2&amp;nbsp; &amp;nbsp;01/02/2016&amp;nbsp; &amp;nbsp;29/02/2016&amp;nbsp; &amp;nbsp;ProdA&amp;nbsp; &amp;nbsp;1&lt;BR /&gt;1&amp;nbsp; &amp;nbsp;3&amp;nbsp; &amp;nbsp;01/03/2016&amp;nbsp; &amp;nbsp;31/03/2016&amp;nbsp; &amp;nbsp;ProdB&amp;nbsp; &amp;nbsp;2&lt;BR /&gt;1&amp;nbsp; &amp;nbsp;4&amp;nbsp; &amp;nbsp;01/04/2016&amp;nbsp; &amp;nbsp;30/04/2016&amp;nbsp; &amp;nbsp;ProdB&amp;nbsp; &amp;nbsp;2&lt;BR /&gt;1&amp;nbsp; &amp;nbsp;5&amp;nbsp; &amp;nbsp;01/05/2016&amp;nbsp; &amp;nbsp;31/05/2016&amp;nbsp; &amp;nbsp;ProdB&amp;nbsp; &amp;nbsp;2&lt;BR /&gt;1&amp;nbsp; &amp;nbsp;.&amp;nbsp; &amp;nbsp; . . . .&lt;BR /&gt;1&amp;nbsp; &amp;nbsp;.&amp;nbsp; &amp;nbsp; . . . .&lt;BR /&gt;1&amp;nbsp; &amp;nbsp;.&amp;nbsp; &amp;nbsp; . . . .&lt;BR /&gt;1&amp;nbsp; &amp;nbsp;41&amp;nbsp; &amp;nbsp;01/05/2019&amp;nbsp; &amp;nbsp;31/05/2019&amp;nbsp; &amp;nbsp;ProdD&amp;nbsp; &amp;nbsp;4&lt;BR /&gt;1&amp;nbsp; &amp;nbsp;42&amp;nbsp; &amp;nbsp;01/06/2019&amp;nbsp; &amp;nbsp;30/06/2019&amp;nbsp; &amp;nbsp;ProdD&amp;nbsp; &amp;nbsp;4&lt;BR /&gt;1&amp;nbsp; &amp;nbsp;43&amp;nbsp; &amp;nbsp;01/07/2019&amp;nbsp; &amp;nbsp;31/07/2019&amp;nbsp; &amp;nbsp;ProdD&amp;nbsp; &amp;nbsp;4&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Do anyone have an idea of how to process?&lt;/P&gt;&lt;P&gt;Thank for your help.&lt;/P&gt;</description>
      <pubDate>Tue, 26 Nov 2019 13:29:51 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Duplicate-rows-between-a-time-period-in-transversal-data/m-p/607310#M176501</guid>
      <dc:creator>Ely</dc:creator>
      <dc:date>2019-11-26T13:29:51Z</dc:date>
    </item>
    <item>
      <title>Re: Duplicate rows between a time period in transversal data</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Duplicate-rows-between-a-time-period-in-transversal-data/m-p/607336#M176520</link>
      <description>&lt;P&gt;Please post the data in usable form, see &lt;A href="https://communities.sas.com/t5/SAS-Communities-Library/How-to-create-a-data-step-version-of-your-data-AKA-generate/ta-p/258712" target="_blank"&gt;https://communities.sas.com/t5/SAS-Communities-Library/How-to-create-a-data-step-version-of-your-data-AKA-generate/ta-p/258712&lt;/A&gt; if you don't know how to do this.&lt;/P&gt;</description>
      <pubDate>Tue, 26 Nov 2019 13:38:34 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Duplicate-rows-between-a-time-period-in-transversal-data/m-p/607336#M176520</guid>
      <dc:creator>andreas_lds</dc:creator>
      <dc:date>2019-11-26T13:38:34Z</dc:date>
    </item>
    <item>
      <title>Re: Duplicate rows between a time period in transversal data</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Duplicate-rows-between-a-time-period-in-transversal-data/m-p/607417#M176585</link>
      <description>&lt;P&gt;In the data your provides (and I concur with &lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/15475"&gt;@andreas_lds&lt;/a&gt;&amp;nbsp; request for a data step providing your sample input data), you have.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Pat&amp;nbsp; &amp;nbsp;Poduct&amp;nbsp; &amp;nbsp;Line&amp;nbsp; &amp;nbsp;Line_first_date&amp;nbsp; &amp;nbsp;Line_end_date&lt;BR /&gt;1&amp;nbsp; &amp;nbsp;ProdA&amp;nbsp; &amp;nbsp;1&amp;nbsp; &amp;nbsp;16/12/2010&amp;nbsp; &amp;nbsp;23/02/2016&lt;BR /&gt;1&amp;nbsp; &amp;nbsp;ProdB&amp;nbsp; &amp;nbsp;2&amp;nbsp; &amp;nbsp;10/03/2016&amp;nbsp; &amp;nbsp;30/06/2017&lt;BR /&gt;1&amp;nbsp; &amp;nbsp;ProdC&amp;nbsp; &amp;nbsp;3&amp;nbsp; &amp;nbsp;18/09/2017&amp;nbsp; &amp;nbsp;20/01/2019&lt;BR /&gt;1&amp;nbsp; &amp;nbsp;ProdD&amp;nbsp; &amp;nbsp;4&amp;nbsp; &amp;nbsp;05/03/2019&amp;nbsp; &amp;nbsp;11/12/2019&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Line 2 ends on 30jun2017, but line 3 begins on 18sep2017.&amp;nbsp;&amp;nbsp; What PRODUCT values do you want assigned to July and August 2017?&amp;nbsp; Please give a more complete description of what you want.&amp;nbsp; And the same question applies to the gap between lines 3 and 4, since the stopping point is July 2019.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Please provide a more comprehensive description of your rules for the output data.&amp;nbsp; Help us help you.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 26 Nov 2019 16:34:24 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Duplicate-rows-between-a-time-period-in-transversal-data/m-p/607417#M176585</guid>
      <dc:creator>mkeintz</dc:creator>
      <dc:date>2019-11-26T16:34:24Z</dc:date>
    </item>
    <item>
      <title>Re: Duplicate rows between a time period in transversal data</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Duplicate-rows-between-a-time-period-in-transversal-data/m-p/607568#M176655</link>
      <description>Hello,&lt;BR /&gt;Thank you for your help.&lt;BR /&gt;In July and August, I want to apply the previous product (ProdB).&lt;BR /&gt;The rules are:&lt;BR /&gt;- to apply the previous product when there is gap. The patient is at any time under treatment&lt;BR /&gt;- to apply the dominant product when there is an overlap of 2 products in the same month: If prod A is taken 12 days and Prod B 19 days, then B is dominant&lt;BR /&gt;Regarding &lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/15475"&gt;@andreas_lds&lt;/a&gt; request, I am still trying what he suggested to me.&lt;BR /&gt;</description>
      <pubDate>Wed, 27 Nov 2019 08:18:54 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Duplicate-rows-between-a-time-period-in-transversal-data/m-p/607568#M176655</guid>
      <dc:creator>Ely</dc:creator>
      <dc:date>2019-11-27T08:18:54Z</dc:date>
    </item>
    <item>
      <title>Re: Duplicate rows between a time period in transversal data</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Duplicate-rows-between-a-time-period-in-transversal-data/m-p/607659#M176703</link>
      <description>&lt;P&gt;Assuming there is not overlap date range for product.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data have;
input Pat   Product $  Line   (Line_first_date   Line_end_date) (: ddmmyy10.);
format Line_first_date   Line_end_date ddmmyy10.;
cards;
1   ProdA   1   16/12/2010   23/02/2016
1   ProdB   2   10/03/2016   30/06/2017
1   ProdC   3   18/09/2017   20/01/2019
1   ProdD   4   05/03/2019   11/12/2019
;

data temp;
 set have;
 do date=Line_first_date  to Line_end_date;
  output;
 end;
 drop Line_first_date   Line_end_date;
run;

data date;
 do date='01jan2016'd to '31jul2019'd;
  year=year(date);month=month(date);output;
 end;
 format date ddmmyy10.;
run;

data temp2;
 merge date(in=ina) temp;
 by date;
 if ina;
run;

proc sql;
create table want as
select year,month,max(pat) as pat,
min(date) as start format=ddmmyy10.,
max(date) as end format=ddmmyy10.,
max(product) as product,max(line) as line
 from temp2
  group by year,month;
quit;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 27 Nov 2019 12:43:30 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Duplicate-rows-between-a-time-period-in-transversal-data/m-p/607659#M176703</guid>
      <dc:creator>Ksharp</dc:creator>
      <dc:date>2019-11-27T12:43:30Z</dc:date>
    </item>
    <item>
      <title>Re: Duplicate rows between a time period in transversal data</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Duplicate-rows-between-a-time-period-in-transversal-data/m-p/609043#M177299</link>
      <description>Many thanks for your help</description>
      <pubDate>Tue, 03 Dec 2019 13:49:49 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Duplicate-rows-between-a-time-period-in-transversal-data/m-p/609043#M177299</guid>
      <dc:creator>Ely</dc:creator>
      <dc:date>2019-12-03T13:49:49Z</dc:date>
    </item>
  </channel>
</rss>

