DATA Step, Macro, Functions and more

Merging 3 datasets to find no matches

Reply
Occasional Contributor
Posts: 10

Merging 3 datasets to find no matches

I would like to merge three datasets A, B, and C to find all the obs in A that do not match B and C. B and C are both subsets of A. Obs in B and C do not match each other.

 

I have tried the code below and many other logic test, but I cannot seem to get the right output. Any help would be appreciated.

 

data want;

merge A(in= inA) B(in=inB) C(in=inC);

by id date;

if not inA or (not inB and not inC) then

output want;

run;

Contributor
Posts: 22

Re: Merging 3 datasets to find no matches

So you want to keep all records in A that don't find matches in either B or C?

 

I would suggest this code:

data want;
   merge a(in=inA) b(in=inB) c(in=inC);
   by id date;
   if inA and not inB and not inC;
run;
Ask a Question
Discussion stats
  • 1 reply
  • 131 views
  • 3 likes
  • 2 in conversation