Hello ,
I want to create data "B" from data "A". That is , I want to keep only data with at least two time points;
Data a,
Input id timepoint;
Cards;
001 1
001 2
001 3
002 1
003 1
003 2
004 1
005 1
;
Run;
Data "B" is created from data "A". id 002 , 004 and 005 are dropped because they are just one time points.
Data B;
Input id timepoint;
Cards;
001 1
001 2
001 3
003 1
003 2
;
run;
You can use the NOUNIQUEKEY option on PROC SORT.
proc sort
data = sashelp.adomsg
out = duplicates
uniqueout = singles
nouniquekey;
by msgid;
run;
proc sql;
create table b as
select *
from a
group by id
having count(id)>1;
quit;
Thanks
You can use the NOUNIQUEKEY option on PROC SORT.
proc sort
data = sashelp.adomsg
out = duplicates
uniqueout = singles
nouniquekey;
by msgid;
run;
With datastep as well
data a2;
do until(last.id);
set a;
by id timepoint;
if first.id then count=1;
else count+1;
end;
do until(last.id);
set a;
by id timepoint;
if count>1 then output ;
end;
run;
Registration is now open for SAS Innovate 2025 , our biggest and most exciting global event of the year! Join us in Orlando, FL, May 6-9.
Sign up by Dec. 31 to get the 2024 rate of just $495.
Register now!
Learn the difference between classical and Bayesian statistical approaches and see a few PROC examples to perform Bayesian analysis in this video.
Find more tutorials on the SAS Users YouTube channel.
Ready to level-up your skills? Choose your own adventure.