<?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: data manipulation in SAS in SAS Data Management</title>
    <link>https://communities.sas.com/t5/SAS-Data-Management/data-manipulation-in-SAS/m-p/356776#M10693</link>
    <description>&lt;P&gt;The following assumes that all three of your partial date fields are SAS dates. If they aren't, they would first have to be converted into SAS dates. I initially inputted them as _Medicine_date, _Treatment_A_Date and _Treatment_B_Date (all character fields) and changed them with the following code:&lt;/P&gt;
&lt;PRE&gt;  if not missing(_Medicine_date) then Medicine_date=input(catt(_Medicine_date,'-2015'),anydtdte11.);
  if not missing(_Treatment_A_Date) then Treatment_A_Date=input(catt(_Treatment_A_Date,'-2015'),anydtdte11.);
  if not missing(_Treatment_B_Date) then Treatment_B_Date=input(catt(_Treatment_B_Date,'-2015'),anydtdte11.);
&lt;/PRE&gt;
&lt;P&gt;&amp;nbsp;Then I used the following code to create the new columns:&lt;/P&gt;
&lt;PRE&gt;data want (drop=phase);
  set have;
  by patient_id;
  retain phase Medine_days;
  if first.patient_id then do;
    phase=1;
    call missing(Medine_days);
    call missing(Treatment_A_Days);
    call missing(Treatment_B_Days);
  end;
  if phase eq 1 then do;
    if not missing(Treatment_A_Date) then do;
      Treatment_A_Days=0;
      phase=2;
      call missing(Medine_days);
    end;
    else Medine_days=medicine_date-LS_DT;
  end;
  else if phase eq 2 then do;
    if not missing(Treatment_B_Date) then do;
      phase=3;
      treatment_B_days=0;
      call missing(Treatment_A_Days);
    end;
    else if not missing(Treatment_A_Date) then do;
      Treatment_A_Days=0;
    end;
    else Treatment_A_Days+1;
  end;
  else if phase eq 3 then do;
    if not missing(Treatment_B_Date) then do;
      treatment_B_days=0;
    end;
    else Treatment_B_Days+1;
  end;
run;
&lt;/PRE&gt;
&lt;P&gt;Art, CEO, AnalystFinder.com&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Mon, 08 May 2017 04:39:27 GMT</pubDate>
    <dc:creator>art297</dc:creator>
    <dc:date>2017-05-08T04:39:27Z</dc:date>
    <item>
      <title>data manipulation in SAS</title>
      <link>https://communities.sas.com/t5/SAS-Data-Management/data-manipulation-in-SAS/m-p/356756#M10687</link>
      <description>&lt;P&gt;how&amp;nbsp;to create the last 3 columns based on the first 5 columns information?&lt;/P&gt;&lt;P&gt;1. Medicine days = medicine date - LS_DT, set to missing once the treatment A begins.&lt;/P&gt;&lt;P&gt;2. Treatment A days = Medicine date - Treatment A start&amp;nbsp;Date&amp;nbsp;untill the 2nd treatment A starts. For example,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; There are 2 Treatment A. The first one starts on August 24th, so Treatment A days is starting from 0, until 5. The 2nd treatment &amp;nbsp;A&lt;BR /&gt;&amp;nbsp;&amp;nbsp; starts&amp;nbsp;on August 30th, so the treatment A days resets and starts from 0 again until 2.&lt;/P&gt;&lt;P&gt;3.&amp;nbsp;Treatment B days= Medicine date - Treatment&amp;nbsp;B start&amp;nbsp;Date&amp;nbsp;untill the&amp;nbsp;end of medicine date. For example,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; the&amp;nbsp;Treatment B&amp;nbsp;starts on Sep 2nd, so Treatment&amp;nbsp;B days is starting from 0, until 2.&amp;nbsp;&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;Patient ID&lt;/TD&gt;&lt;TD&gt;Medicine date&lt;/TD&gt;&lt;TD&gt;LS_DT&lt;/TD&gt;&lt;TD&gt;Treatment A Date&lt;/TD&gt;&lt;TD&gt;Treatment B Date&lt;/TD&gt;&lt;TD&gt;Medine days&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;treatment A days&lt;/TD&gt;&lt;TD&gt;treatment B days&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;18-Aug&lt;/TD&gt;&lt;TD&gt;07/03/2015&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;46&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;19-Aug&lt;/TD&gt;&lt;TD&gt;07/03/2015&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;47&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;20-Aug&lt;/TD&gt;&lt;TD&gt;07/03/2015&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;48&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;21-Aug&lt;/TD&gt;&lt;TD&gt;07/03/2015&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;49&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;22-Aug&lt;/TD&gt;&lt;TD&gt;07/03/2015&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;50&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;23-Aug&lt;/TD&gt;&lt;TD&gt;07/03/2015&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;51&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;24-Aug&lt;/TD&gt;&lt;TD&gt;07/03/2015&lt;/TD&gt;&lt;TD&gt;24-Aug&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;0&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;25-Aug&lt;/TD&gt;&lt;TD&gt;07/03/2015&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;26-Aug&lt;/TD&gt;&lt;TD&gt;07/03/2015&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;27-Aug&lt;/TD&gt;&lt;TD&gt;07/03/2015&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;3&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;28-Aug&lt;/TD&gt;&lt;TD&gt;07/03/2015&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;4&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;29-Aug&lt;/TD&gt;&lt;TD&gt;07/03/2015&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;5&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;30-Aug&lt;/TD&gt;&lt;TD&gt;07/03/2015&lt;/TD&gt;&lt;TD&gt;30-Aug&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;0&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;31-Aug&lt;/TD&gt;&lt;TD&gt;07/03/2015&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;1-Sep&lt;/TD&gt;&lt;TD&gt;07/03/2015&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;2-Sep&lt;/TD&gt;&lt;TD&gt;07/03/2015&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;2-Sep&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;0&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;3-Sep&lt;/TD&gt;&lt;TD&gt;07/03/2015&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;4-Sep&lt;/TD&gt;&lt;TD&gt;07/03/2015&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;31-Aug&lt;/TD&gt;&lt;TD&gt;07/05/2015&lt;/TD&gt;&lt;TD&gt;31-Aug&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;57&lt;/TD&gt;&lt;TD&gt;0&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;1-Sep&lt;/TD&gt;&lt;TD&gt;07/05/2015&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;2-Sep&lt;/TD&gt;&lt;TD&gt;07/05/2015&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;3-Sep&lt;/TD&gt;&lt;TD&gt;07/05/2015&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;3-Sep&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;0&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;4-Sep&lt;/TD&gt;&lt;TD&gt;07/05/2015&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;</description>
      <pubDate>Mon, 08 May 2017 01:15:58 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Data-Management/data-manipulation-in-SAS/m-p/356756#M10687</guid>
      <dc:creator>grace999</dc:creator>
      <dc:date>2017-05-08T01:15:58Z</dc:date>
    </item>
    <item>
      <title>Re: data manipulation in SAS</title>
      <link>https://communities.sas.com/t5/SAS-Data-Management/data-manipulation-in-SAS/m-p/356767#M10691</link>
      <description>&lt;P&gt;How did you get those first 5 columns? I suspect the data was originally not like that, but it's not conducive to answering your question easily. It would be much easier if the treatment A start date was at the top for example.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;What format are your dates in? The Medicine date doesn't have a year? Is that correct? What happens when a treatment A date is one year and the LST date is the previous year? How can that be differentiated?&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Do you really need three new columns? Why not create one new column with a treatment type and a second with duration? It'll likely be easier to work with further on in this format.&lt;/P&gt;</description>
      <pubDate>Mon, 08 May 2017 03:27:10 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Data-Management/data-manipulation-in-SAS/m-p/356767#M10691</guid>
      <dc:creator>Reeza</dc:creator>
      <dc:date>2017-05-08T03:27:10Z</dc:date>
    </item>
    <item>
      <title>Re: data manipulation in SAS</title>
      <link>https://communities.sas.com/t5/SAS-Data-Management/data-manipulation-in-SAS/m-p/356776#M10693</link>
      <description>&lt;P&gt;The following assumes that all three of your partial date fields are SAS dates. If they aren't, they would first have to be converted into SAS dates. I initially inputted them as _Medicine_date, _Treatment_A_Date and _Treatment_B_Date (all character fields) and changed them with the following code:&lt;/P&gt;
&lt;PRE&gt;  if not missing(_Medicine_date) then Medicine_date=input(catt(_Medicine_date,'-2015'),anydtdte11.);
  if not missing(_Treatment_A_Date) then Treatment_A_Date=input(catt(_Treatment_A_Date,'-2015'),anydtdte11.);
  if not missing(_Treatment_B_Date) then Treatment_B_Date=input(catt(_Treatment_B_Date,'-2015'),anydtdte11.);
&lt;/PRE&gt;
&lt;P&gt;&amp;nbsp;Then I used the following code to create the new columns:&lt;/P&gt;
&lt;PRE&gt;data want (drop=phase);
  set have;
  by patient_id;
  retain phase Medine_days;
  if first.patient_id then do;
    phase=1;
    call missing(Medine_days);
    call missing(Treatment_A_Days);
    call missing(Treatment_B_Days);
  end;
  if phase eq 1 then do;
    if not missing(Treatment_A_Date) then do;
      Treatment_A_Days=0;
      phase=2;
      call missing(Medine_days);
    end;
    else Medine_days=medicine_date-LS_DT;
  end;
  else if phase eq 2 then do;
    if not missing(Treatment_B_Date) then do;
      phase=3;
      treatment_B_days=0;
      call missing(Treatment_A_Days);
    end;
    else if not missing(Treatment_A_Date) then do;
      Treatment_A_Days=0;
    end;
    else Treatment_A_Days+1;
  end;
  else if phase eq 3 then do;
    if not missing(Treatment_B_Date) then do;
      treatment_B_days=0;
    end;
    else Treatment_B_Days+1;
  end;
run;
&lt;/PRE&gt;
&lt;P&gt;Art, CEO, AnalystFinder.com&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 08 May 2017 04:39:27 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Data-Management/data-manipulation-in-SAS/m-p/356776#M10693</guid>
      <dc:creator>art297</dc:creator>
      <dc:date>2017-05-08T04:39:27Z</dc:date>
    </item>
    <item>
      <title>Re: data manipulation in SAS</title>
      <link>https://communities.sas.com/t5/SAS-Data-Management/data-manipulation-in-SAS/m-p/356800#M10696</link>
      <description>&lt;P&gt;My answer: do not work with data like this. Dates without years are utterly useless and will bite you in your behind some day. Return to sender with a corresponding nastygram. You're being paid to analyze, not to make guesses.&lt;/P&gt;</description>
      <pubDate>Mon, 08 May 2017 07:54:45 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Data-Management/data-manipulation-in-SAS/m-p/356800#M10696</guid>
      <dc:creator>Kurt_Bremser</dc:creator>
      <dc:date>2017-05-08T07:54:45Z</dc:date>
    </item>
    <item>
      <title>Re: data manipulation in SAS</title>
      <link>https://communities.sas.com/t5/SAS-Data-Management/data-manipulation-in-SAS/m-p/356860#M10699</link>
      <description>&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data have;
infile cards expandtabs truncover;
input PatientID	Medicinedate $	LS_DT : mmddyy10.	TreatmentA $ treatmentB $;
date=input(cats(Medicinedate,'-2015'),date11.);
format date ls_dt mmddyy10.;
cards;
1	18-Aug	07/03/2015	. . 	 	46	 	 
1	19-Aug	07/03/2015	. . 	 	47	 	 
1	20-Aug	07/03/2015	 . .	 	48	 	 
1	21-Aug	07/03/2015	 . .	 	49	 	 
1	22-Aug	07/03/2015	 . .	 	50	 	 
1	23-Aug	07/03/2015	 . .	 	51	 	 
1	24-Aug	07/03/2015	24-Aug	 .	 	0	 
1	25-Aug	07/03/2015	 . .	 	 	1	 
1	26-Aug	07/03/2015	 . .	 	 	2	 
1	27-Aug	07/03/2015	 . .	 	 	3	 
1	28-Aug	07/03/2015	 . .	 	 	4	 
1	29-Aug	07/03/2015	 . .	 	 	5	 
1	30-Aug	07/03/2015	30-Aug	. 	 	0	 
1	31-Aug	07/03/2015	 . .	 	 	1	 
1	1-Sep	07/03/2015	 . .	 	 	2	 
1	2-Sep	07/03/2015	 .	2-Sep	 	 	0
1	3-Sep	07/03/2015	 . .	 	 	 	1
1	4-Sep	07/03/2015	 . .	 	 	 	2
2	31-Aug	07/05/2015	31-Aug	. 	57	0	 
2	1-Sep	07/05/2015	 . .	 	 	1	 
2	2-Sep	07/05/2015	 . .	 	 	2	 
2	3-Sep	07/05/2015	 .	3-Sep	 	 	0
2	4-Sep	07/05/2015	 . .	 
;
run;
data want;
 set have;
 by PatientID;
 retain a b count;
 if first.PatientID then do;
  call missing(a,b,count);
 end;

 if not a and not b then Medinedays=date-ls_dt;
 
 if not missing(TreatmentA) then do;a=1;count=-1;end;
 if not missing(treatmentB) then do;b=1;count=-1;end;
 count+1;
 if a and not b then treatmentAdays=count;
 if a and b then treatmentBdays=count;
 drop a b count date;
run;
proc print noobs;run;&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Mon, 08 May 2017 12:59:38 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Data-Management/data-manipulation-in-SAS/m-p/356860#M10699</guid>
      <dc:creator>Ksharp</dc:creator>
      <dc:date>2017-05-08T12:59:38Z</dc:date>
    </item>
    <item>
      <title>Re: data manipulation in SAS</title>
      <link>https://communities.sas.com/t5/SAS-Data-Management/data-manipulation-in-SAS/m-p/356877#M10701</link>
      <description>&lt;P&gt;Thanks to all of you for responding my question. This is my first time to post a question. Sorry for some formating issue. The medicinedate field do have the year 2015, but it did not show it when I copied the date from Excel. Thanks for adding it.&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 08 May 2017 14:19:19 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Data-Management/data-manipulation-in-SAS/m-p/356877#M10701</guid>
      <dc:creator>grace999</dc:creator>
      <dc:date>2017-05-08T14:19:19Z</dc:date>
    </item>
    <item>
      <title>Re: data manipulation in SAS</title>
      <link>https://communities.sas.com/t5/SAS-Data-Management/data-manipulation-in-SAS/m-p/356881#M10702</link>
      <description>&lt;P&gt;Could you please help me to understand why count resets when the 2nd Treatment A starts on August 30th? if I only count the days for the 1st Treatment A starts, ignoring the 2nd one, how should I do? Thanks.&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 08 May 2017 14:39:17 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Data-Management/data-manipulation-in-SAS/m-p/356881#M10702</guid>
      <dc:creator>grace999</dc:creator>
      <dc:date>2017-05-08T14:39:17Z</dc:date>
    </item>
    <item>
      <title>Re: data manipulation in SAS</title>
      <link>https://communities.sas.com/t5/SAS-Data-Management/data-manipulation-in-SAS/m-p/356883#M10703</link>
      <description>&lt;P&gt;The code is doing what you showed/explained in your example. Are you now asking for subsequent starts to have missing values OR that the numbering continues from the first date?&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Art, CEO, AnalystFinder.com&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 08 May 2017 14:46:54 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Data-Management/data-manipulation-in-SAS/m-p/356883#M10703</guid>
      <dc:creator>art297</dc:creator>
      <dc:date>2017-05-08T14:46:54Z</dc:date>
    </item>
    <item>
      <title>Re: data manipulation in SAS</title>
      <link>https://communities.sas.com/t5/SAS-Data-Management/data-manipulation-in-SAS/m-p/356884#M10704</link>
      <description>&lt;P&gt;Whenever I see a "date" like this: 24-Aug&lt;/P&gt;
&lt;P&gt;I say, go back to Excel and reset the column property to a proper date format then reexport or reread into SAS.&lt;/P&gt;
&lt;P&gt;Note that I am assuming the data is entered in Excel but I have seen this &lt;STRONG&gt;many&lt;/STRONG&gt; times. And the obnoxious thing you have to worry about with Excel is that it is known to change entered values to 'dates' that were not or to interpret the value as entered to be a different date than intended.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;If any of your LS_DT are near the year boundary you may find that the Excel date for the Medicine or Treatment dates may be in the wrong year as those 24-Aug usually are assuming what ever was entered was for the year of data entry. So and actual Dec of 2015 might have changed to a Dec 2016 if entered in 2016.&lt;/P&gt;</description>
      <pubDate>Mon, 08 May 2017 14:47:06 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Data-Management/data-manipulation-in-SAS/m-p/356884#M10704</guid>
      <dc:creator>ballardw</dc:creator>
      <dc:date>2017-05-08T14:47:06Z</dc:date>
    </item>
    <item>
      <title>Re: data manipulation in SAS</title>
      <link>https://communities.sas.com/t5/SAS-Data-Management/data-manipulation-in-SAS/m-p/356897#M10706</link>
      <description>&lt;P&gt;Great suggestion! I went to my excel and modified the format for the dates.&amp;nbsp;&lt;/P&gt;&lt;P&gt;Here is the modifed table.&amp;nbsp;&lt;/P&gt;&lt;DIV class="lia-page"&gt;&lt;CENTER&gt;&lt;DIV class="MinimumWidthContainer"&gt;&lt;DIV class="min-width-wrapper"&gt;&lt;DIV class="min-width"&gt;&lt;DIV class="lia-content"&gt;&lt;DIV class="lia-quilt lia-quilt-forum-topic-page lia-quilt-layout-two-column-main-side lia-top-quilt"&gt;&lt;DIV class="lia-quilt-row lia-quilt-row-header"&gt;&lt;DIV class="lia-quilt-row lia-quilt-row-main"&gt;&lt;DIV class="lia-quilt-column lia-quilt-column-18 lia-quilt-column-left lia-quilt-column-main-content"&gt;&lt;DIV class="lia-quilt-column-alley lia-quilt-column-alley-left"&gt;&lt;DIV class="lia-component-message-list"&gt;&lt;DIV class="linear-message-list message-list"&gt;&lt;DIV class="lia-linear-display-message-view"&gt;&lt;DIV&gt;&lt;DIV class="lia-message-view message-uid-356881"&gt;&lt;DIV&gt;&lt;DIV class="lia-js-resize-images lia-component-forums-widget-board-message-view"&gt;&lt;DIV&gt;&lt;DIV class="lia-message-board lia-panel-message lia-js-data-messageUid-356881"&gt;&lt;DIV class="lia-panel-message-content"&gt;&lt;DIV class="lia-decoration-border"&gt;&lt;DIV class="lia-decoration-border-content"&gt;&lt;DIV&gt;&lt;DIV&gt;&lt;DIV class="lia-quilt lia-quilt-forum-message lia-quilt-layout-forum-message"&gt;&lt;DIV class="lia-quilt-row lia-quilt-row-forum-message-main"&gt;&lt;DIV class="lia-quilt-column lia-quilt-column-20 lia-quilt-column-right lia-quilt-column-main-right"&gt;&lt;DIV class="lia-quilt-column-alley lia-quilt-column-alley-right"&gt;&lt;DIV class="lia-message-body lia-component-body"&gt;&lt;DIV class="lia-message-body-content"&gt;&lt;P&gt;Could you please help me to understand why count resets when the 2nd Treatment A starts on August 30th? if I only count the days for the 1st Treatment A starts, ignoring the 2nd one, as&amp;nbsp;the treatment A days like this highlighted in Red.&amp;nbsp;how should I do? Thanks.&amp;nbsp;&lt;/P&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/CENTER&gt;&lt;/DIV&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;patient ID&lt;/TD&gt;&lt;TD&gt;Medicine date&lt;/TD&gt;&lt;TD&gt;LS_DT&lt;/TD&gt;&lt;TD&gt;Treatment A Date&lt;/TD&gt;&lt;TD&gt;Treatment B Date&lt;/TD&gt;&lt;TD&gt;Medine days&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;treatment A days&lt;/TD&gt;&lt;TD&gt;treatment B days&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;8/18/2015&lt;/TD&gt;&lt;TD&gt;07/03/2015&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;46&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;8/19/2015&lt;/TD&gt;&lt;TD&gt;07/03/2015&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;47&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;8/20/2015&lt;/TD&gt;&lt;TD&gt;07/03/2015&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;48&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;8/21/2015&lt;/TD&gt;&lt;TD&gt;07/03/2015&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;49&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;8/22/2015&lt;/TD&gt;&lt;TD&gt;07/03/2015&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;50&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;8/23/2015&lt;/TD&gt;&lt;TD&gt;07/03/2015&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;51&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;8/24/2015&lt;/TD&gt;&lt;TD&gt;07/03/2015&lt;/TD&gt;&lt;TD&gt;8/24/2015&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;0&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;8/25/2015&lt;/TD&gt;&lt;TD&gt;07/03/2015&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;8/26/2015&lt;/TD&gt;&lt;TD&gt;07/03/2015&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;8/27/2015&lt;/TD&gt;&lt;TD&gt;07/03/2015&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;3&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;8/28/2015&lt;/TD&gt;&lt;TD&gt;07/03/2015&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;4&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;8/29/2015&lt;/TD&gt;&lt;TD&gt;07/03/2015&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;5&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;8/30/2015&lt;/TD&gt;&lt;TD&gt;07/03/2015&lt;/TD&gt;&lt;TD&gt;8/30/2015&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&lt;FONT color="#FF0000"&gt;6&lt;/FONT&gt;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;8/31/2015&lt;/TD&gt;&lt;TD&gt;07/03/2015&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&lt;FONT color="#FF0000"&gt;7&lt;/FONT&gt;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;9/1/2015&lt;/TD&gt;&lt;TD&gt;07/03/2015&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&lt;FONT color="#FF0000"&gt;8&lt;/FONT&gt;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;9/2/2015&lt;/TD&gt;&lt;TD&gt;07/03/2015&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;9/2/2015&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;0&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;9/3/2015&lt;/TD&gt;&lt;TD&gt;07/03/2015&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;9/4/2015&lt;/TD&gt;&lt;TD&gt;07/03/2015&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;8/31/2015&lt;/TD&gt;&lt;TD&gt;07/05/2015&lt;/TD&gt;&lt;TD&gt;8/31/2015&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;0&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;9/1/2015&lt;/TD&gt;&lt;TD&gt;07/05/2015&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;9/2/2015&lt;/TD&gt;&lt;TD&gt;07/05/2015&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;9/3/2015&lt;/TD&gt;&lt;TD&gt;07/05/2015&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;9/3/2015&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;0&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;9/4/2015&lt;/TD&gt;&lt;TD&gt;07/05/2015&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;</description>
      <pubDate>Mon, 08 May 2017 15:15:22 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Data-Management/data-manipulation-in-SAS/m-p/356897#M10706</guid>
      <dc:creator>grace999</dc:creator>
      <dc:date>2017-05-08T15:15:22Z</dc:date>
    </item>
    <item>
      <title>Re: data manipulation in SAS</title>
      <link>https://communities.sas.com/t5/SAS-Data-Management/data-manipulation-in-SAS/m-p/356902#M10707</link>
      <description>&lt;P&gt;There are two changes in your latest example: (1) the 57 days removed in the line:&lt;/P&gt;
&lt;PRE&gt;2 31-Aug07/05/2015 31-Aug08/31/2015 . 0 .&lt;/PRE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;and (2) the counter isn't reset when an additional treatment date exists.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Interestingly, the code I had proposed, contrary to your specs, did precisely the first change. If the treatment and meds started on the same day, it didn't output the number of med days.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I don't have time to review&amp;nbsp;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/18408"&gt;@Ksharp&lt;/a&gt;'s code but, for the code I proposed, here is the change that would do #2:&lt;/P&gt;
&lt;PRE&gt;data want (drop=phase);
  set have;
  by patientid;
  retain phase Medine_days;
  if first.patientid then do;
    phase=1;
    call missing(Medine_days);
    call missing(Treatment_A_Days);
    call missing(Treatment_B_Days);
  end;
  if phase eq 1 then do;
    if not missing(TreatmentA) then do;
      Treatment_A_Days=0;
      phase=2;
      call missing(Medine_days);
    end;
    else Medine_days=date-LS_DT;
  end;
  else if phase eq 2 then do;
    if not missing(TreatmentB) then do;
      phase=3;
      treatment_B_days=0;
      call missing(Treatment_A_Days);
    end;
/*     else if not missing(TreatmentA) then do; */
/*       Treatment_A_Days=0; */
/*     end; */
    else Treatment_A_Days+1;
  end;
  else if phase eq 3 then do;
/*     if not missing(TreatmentB) then do; */
/*       treatment_B_days=0; */
/*     end; */
/*     else */
    Treatment_B_Days+1;
  end;
run;
&lt;/PRE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Art, CEO, AnalystFinder.com&lt;/P&gt;</description>
      <pubDate>Mon, 08 May 2017 15:26:02 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Data-Management/data-manipulation-in-SAS/m-p/356902#M10707</guid>
      <dc:creator>art297</dc:creator>
      <dc:date>2017-05-08T15:26:02Z</dc:date>
    </item>
    <item>
      <title>Re: data manipulation in SAS</title>
      <link>https://communities.sas.com/t5/SAS-Data-Management/data-manipulation-in-SAS/m-p/357155#M10718</link>
      <description>&lt;P&gt;Because I reset it at here&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt; if not missing(TreatmentA) then do;a=1;count=-1;end;
 if not missing(treatmentB) then do;b=1;count=-1;end;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;If you don't want reset it ,try this one.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data have;
infile cards expandtabs truncover;
input PatientID	Medicinedate $	LS_DT : mmddyy10.	TreatmentA $ treatmentB $;
date=input(cats(Medicinedate,'-2015'),date11.);
format date ls_dt mmddyy10.;
cards;
1	18-Aug	07/03/2015	. . 	 	46	 	 
1	19-Aug	07/03/2015	. . 	 	47	 	 
1	20-Aug	07/03/2015	 . .	 	48	 	 
1	21-Aug	07/03/2015	 . .	 	49	 	 
1	22-Aug	07/03/2015	 . .	 	50	 	 
1	23-Aug	07/03/2015	 . .	 	51	 	 
1	24-Aug	07/03/2015	24-Aug	 .	 	0	 
1	25-Aug	07/03/2015	 . .	 	 	1	 
1	26-Aug	07/03/2015	 . .	 	 	2	 
1	27-Aug	07/03/2015	 . .	 	 	3	 
1	28-Aug	07/03/2015	 . .	 	 	4	 
1	29-Aug	07/03/2015	 . .	 	 	5	 
1	30-Aug	07/03/2015	30-Aug	. 	 	0	 
1	31-Aug	07/03/2015	 . .	 	 	1	 
1	1-Sep	07/03/2015	 . .	 	 	2	 
1	2-Sep	07/03/2015	 .	2-Sep	 	 	0
1	3-Sep	07/03/2015	 . .	 	 	 	1
1	4-Sep	07/03/2015	 . .	 	 	 	2
2	31-Aug	07/05/2015	31-Aug	. 	57	0	 
2	1-Sep	07/05/2015	 . .	 	 	1	 
2	2-Sep	07/05/2015	 . .	 	 	2	 
2	3-Sep	07/05/2015	 .	3-Sep	 	 	0
2	4-Sep	07/05/2015	 . .	 
;
run;
data want;
 set have;
 by PatientID;
 retain a b count;
 if first.PatientID then do;
  call missing(a,b,count);
 end;

 if not a and not b then Medinedays=date-ls_dt;
 
 if not missing(TreatmentA) and not a then do;a=1;count=-1;end;
 if not missing(treatmentB) and not b then do;b=1;count=-1;end;
 count+1;
 if a and not b then treatmentAdays=count;
 if a and b then treatmentBdays=count;
 drop a b count date;
run;
&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Tue, 09 May 2017 12:31:37 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Data-Management/data-manipulation-in-SAS/m-p/357155#M10718</guid>
      <dc:creator>Ksharp</dc:creator>
      <dc:date>2017-05-09T12:31:37Z</dc:date>
    </item>
    <item>
      <title>Re: data manipulation in SAS</title>
      <link>https://communities.sas.com/t5/SAS-Data-Management/data-manipulation-in-SAS/m-p/357430#M10731</link>
      <description>&lt;P&gt;Re: data manipulation in SAS&lt;/P&gt;&lt;DIV class="MessageReadByModeratorCell lia-moderation-moderated"&gt;&lt;SPAN class="DateTime lia-message-posted-on lia-component-common-widget-date"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV class="lia-message-body lia-component-body"&gt;&lt;DIV class="lia-message-body-content"&gt;&lt;P&gt;Thank you so much for all of your help.&amp;nbsp;&lt;/P&gt;&lt;P&gt;Both of your code (&lt;A href="https://communities.sas.com/t5/user/viewprofilepage/user-id/13711" target="_self"&gt;&lt;SPAN class="login-bold"&gt;art297&lt;/SPAN&gt;&lt;/A&gt;'s code&amp;nbsp;and Ksharp's code)&amp;nbsp;work perfectly for the sample data I gave before, but my data is more complicated than that. For example, Treatment A and Treatment B can happen in the same day; Also the date is not necessary continuous, so it might miss some dates in between within the same patient. So I am thinking to use the lag function to repeat the treatment date, then use the following formula to calculate.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;treatment A days = Medicine date - Treatment A date2&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;treatment B days = Medicine date - Treatment B date2&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;Would you please help me to get the&amp;nbsp;Treatment A Date2 and&amp;nbsp;Treatment B&amp;nbsp;Date2? Thanks a lot!&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;patient ID&lt;/TD&gt;&lt;TD&gt;Medicine date&lt;/TD&gt;&lt;TD&gt;LS_DT&lt;/TD&gt;&lt;TD&gt;Treatment A Date&lt;/TD&gt;&lt;TD&gt;Treatment B Date&lt;/TD&gt;&lt;TD&gt;Treatment A Date2&lt;/TD&gt;&lt;TD&gt;Treatment B Date2&lt;/TD&gt;&lt;TD&gt;Medine days&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;treatment A days = Medicine date - Treatment A date2&lt;/TD&gt;&lt;TD&gt;treatment B days = Medicine date - Treatment B date2&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;8/18/2015&lt;/TD&gt;&lt;TD&gt;07/03/2015&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;46&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;8/19/2015&lt;/TD&gt;&lt;TD&gt;07/03/2015&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;47&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;8/20/2015&lt;/TD&gt;&lt;TD&gt;07/03/2015&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;48&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;8/21/2015&lt;/TD&gt;&lt;TD&gt;07/03/2015&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;49&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;8/22/2015&lt;/TD&gt;&lt;TD&gt;07/03/2015&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;50&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;8/23/2015&lt;/TD&gt;&lt;TD&gt;07/03/2015&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;51&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;8/24/2015&lt;/TD&gt;&lt;TD&gt;07/03/2015&lt;/TD&gt;&lt;TD&gt;8/24/2015&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;8/24/2015&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;0&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;8/25/2015&lt;/TD&gt;&lt;TD&gt;07/03/2015&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;8/24/2015&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;8/26/2015&lt;/TD&gt;&lt;TD&gt;07/03/2015&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;8/24/2015&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;8/27/2015&lt;/TD&gt;&lt;TD&gt;07/03/2015&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;8/24/2015&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;3&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;8/28/2015&lt;/TD&gt;&lt;TD&gt;07/03/2015&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;8/24/2015&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;4&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;8/29/2015&lt;/TD&gt;&lt;TD&gt;07/03/2015&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;8/24/2015&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;5&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;8/30/2015&lt;/TD&gt;&lt;TD&gt;07/03/2015&lt;/TD&gt;&lt;TD&gt;8/30/2015&lt;/TD&gt;&lt;TD&gt;8/30/2015&lt;/TD&gt;&lt;TD&gt;8/30/2015&lt;/TD&gt;&lt;TD&gt;8/30/2015&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;0&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;8/31/2015&lt;/TD&gt;&lt;TD&gt;07/03/2015&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;8/30/2015&lt;/TD&gt;&lt;TD&gt;8/30/2015&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;9/1/2015&lt;/TD&gt;&lt;TD&gt;07/03/2015&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;8/30/2015&lt;/TD&gt;&lt;TD&gt;8/30/2015&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;9/2/2015&lt;/TD&gt;&lt;TD&gt;07/03/2015&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;8/30/2015&lt;/TD&gt;&lt;TD&gt;8/30/2015&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;3&lt;/TD&gt;&lt;TD&gt;0&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;9/3/2015&lt;/TD&gt;&lt;TD&gt;07/03/2015&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;8/30/2015&lt;/TD&gt;&lt;TD&gt;8/30/2015&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;4&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;9/4/2015&lt;/TD&gt;&lt;TD&gt;07/03/2015&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;8/30/2015&lt;/TD&gt;&lt;TD&gt;8/30/2015&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;5&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;8/31/2015&lt;/TD&gt;&lt;TD&gt;07/05/2015&lt;/TD&gt;&lt;TD&gt;8/31/2015&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;8/31/2015&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;0&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;9/1/2015&lt;/TD&gt;&lt;TD&gt;07/05/2015&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;8/31/2015&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;9/2/2015&lt;/TD&gt;&lt;TD&gt;07/05/2015&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;8/31/2015&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;9/3/2015&lt;/TD&gt;&lt;TD&gt;07/05/2015&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;9/3/2015&lt;/TD&gt;&lt;TD&gt;8/31/2015&lt;/TD&gt;&lt;TD&gt;9/3/2015&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;0&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;9/4/2015&lt;/TD&gt;&lt;TD&gt;07/05/2015&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;8/31/2015&lt;/TD&gt;&lt;TD&gt;9/3/2015&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;/DIV&gt;&lt;/DIV&gt;</description>
      <pubDate>Wed, 10 May 2017 12:04:06 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Data-Management/data-manipulation-in-SAS/m-p/357430#M10731</guid>
      <dc:creator>grace999</dc:creator>
      <dc:date>2017-05-10T12:04:06Z</dc:date>
    </item>
    <item>
      <title>Re: data manipulation in SAS</title>
      <link>https://communities.sas.com/t5/SAS-Data-Management/data-manipulation-in-SAS/m-p/357460#M10732</link>
      <description>&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data have;
infile cards expandtabs truncover;
input PatientID	Medicinedate $	LS_DT : mmddyy10.	TreatmentA : date9. treatmentB :date9.;
format date ls_dt TreatmentA  treatmentB mmddyy10.;
cards;
1	18-Aug	07/03/2015	. . 	 	46	 	 
1	19-Aug	07/03/2015	. . 	 	47	 	 
1	20-Aug	07/03/2015	 . .	 	48	 	 
1	21-Aug	07/03/2015	 . .	 	49	 	 
1	22-Aug	07/03/2015	 . .	 	50	 	 
1	23-Aug	07/03/2015	 . .	 	51	 	 
1	24-Aug	07/03/2015	24Aug2015	 .	 	0	 
1	25-Aug	07/03/2015	 . .	 	 	1	 
1	26-Aug	07/03/2015	 . .	 	 	2	 
1	27-Aug	07/03/2015	 . .	 	 	3	 
1	28-Aug	07/03/2015	 . .	 	 	4	 
1	29-Aug	07/03/2015	 . .	 	 	5	 
1	30-Aug	07/03/2015	30Aug2015	. 	 	0	 
1	31-Aug	07/03/2015	 . .	 	 	1	 
1	1-Sep	07/03/2015	 . .	 	 	2	 
1	2-Sep	07/03/2015	 .	2Sep2015	 	 	0
1	3-Sep	07/03/2015	 . .	 	 	 	1
1	4-Sep	07/03/2015	 . .	 	 	 	2
2	31-Aug	07/05/2015	31Aug2015	. 	57	0	 
2	1-Sep	07/05/2015	 . .	 	 	1	 
2	2-Sep	07/05/2015	 . .	 	 	2	 
2	3-Sep	07/05/2015	 .	3Sep2015	 	 	0
2	4-Sep	07/05/2015	 . .	 
;
run;
data want;
 set have;
 by PatientID;
 retain TreatmentADate2 TreatmentBDate2;
 if first.PatientID then call missing(TreatmentADate2,TreatmentBDate2);
 if not missing(TreatmentA) then TreatmentADate2=TreatmentA ;
 if not missing(treatmentB) then TreatmentBDate2=treatmentB ;
 format TreatmentADate2 TreatmentBDate2 date9.;
run;&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Wed, 10 May 2017 13:09:55 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Data-Management/data-manipulation-in-SAS/m-p/357460#M10732</guid>
      <dc:creator>Ksharp</dc:creator>
      <dc:date>2017-05-10T13:09:55Z</dc:date>
    </item>
    <item>
      <title>Re: data manipulation in SAS</title>
      <link>https://communities.sas.com/t5/SAS-Data-Management/data-manipulation-in-SAS/m-p/357496#M10733</link>
      <description>Thanks a lot! Retain function is very useful! &lt;span class="lia-unicode-emoji" title=":slightly_smiling_face:"&gt;🙂&lt;/span&gt; SAS community is so helpful. Thanks to all!</description>
      <pubDate>Wed, 10 May 2017 14:34:08 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Data-Management/data-manipulation-in-SAS/m-p/357496#M10733</guid>
      <dc:creator>grace999</dc:creator>
      <dc:date>2017-05-10T14:34:08Z</dc:date>
    </item>
  </channel>
</rss>

