BookmarkSubscribeRSS Feed
joe4444
Calcite | Level 5

I have a simple merging question that should be an easy answer, but I can not figure it out. Here is the data. Thanks.

Dataset1

ID Var1

1   Yes

2

2

3   No

Dataset2

ID Var1

1  

2  Yes

3  

data dataset3;

merge dataset1 (in=a) dataset2 (in=b);

by ID;

if a;

run;

Dataset3

ID Var1

1   Yes

2   Yes

2

3   No

Why does ID = 2 not have "Yes" replace the blanks in Var1 for both records?

Thanks.

1 REPLY 1
Tom
Super User Tom
Super User

Because only one record with a YES was provided from the second dataset.  So on the second observation for ID=2 only dataset1 is contributing a value.

Many to One merges like this only work when the non-key variables do not overlap.

hackathon24-white-horiz.png

The 2025 SAS Hackathon has begun!

It's finally time to hack! Remember to visit the SAS Hacker's Hub regularly for news and updates.

Latest Updates

What is ANOVA?

ANOVA, or Analysis Of Variance, is used to compare the averages or means of two or more populations to better understand how they differ. Watch this tutorial for more.

Find more tutorials on the SAS Users YouTube channel.

Discussion stats
  • 1 reply
  • 1469 views
  • 0 likes
  • 2 in conversation