I think this is what you want
data raw (rename= (visit= ELEMENT));
input pt visit :$13. STDT: is8601da.;
format STDT is8601da.;
datalines;
101 screening 2017-02-10
101 randomization 2017-02-24
101 treatment 2017-03-05
101 followup 2017-09-23
102 screening 2017-02-12
102 randomization 2017-02-22
102 treatment 2017-03-10
102 followup 2017-09-20
run;
data want;
merge raw(rename=STDT=start_date) raw(firstobs=2 rename=STDT=end_date keep=STDT);
if ELEMENT='followup' then end_date=start_date;
run;
... View more