Hello,
I am trying to merge one wide and one long data set. Both datasets have information on the same participants which is identified by the variable ID.
Once I sort the datasets by ID, can I merge them from their original data formats? Or do I have to make both datasets into the same format (both long or both wide files) in order to merge them?
I greatly appreciate your help!
Best,
Joanna
@joannahh wrote:
Once I sort the datasets by ID, can I merge them from their original data formats? Or do I have to make both datasets into the same format (both long or both wide files) in order to merge them?
You can merge them without changing them to the same structure, as long as the output will be what you want. It's really dependent on what you want as output.
Thank you so much for your fast response!
So the following syntax is what I used and my output is in a long file (which is what I wanted):
"data merged; merge wide long(in = a) ; by ID; if a; run;"
I'm not sure if I am providing sufficient information for a response but I was wondering if getting a long-file output is what you would expect from the above syntax.
Thank you again for your help!
By "long", I presume you mean a dataset with possible repeats of the by variable ID. And by "wide" do you mean one observation per ID?
If so then your program will be a "LONG left join WIDE on long.id=wide.id" in proc sql syntax.
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.