BookmarkSubscribeRSS Feed
Orange1984
Calcite | Level 5

I would like to merge two datasets and keep resultant dataset only appearing in dataset "temp1m". However, my log file indicates one more observation in the final dataset compared to "temp1m". Please see my log below. 

 

Do you have any idea why it happens and how to solve it? Thank you. 

 

1363  /* merge */

1364  data temp12;

1365     merge temp1m(in = b) temp2m(in = a) ;

1366     by stcode ctcode;

1367     if b;

1368  run;

 

NOTE: MERGE statement has more than one data set with repeats of BY values.

NOTE: There were 4559 observations read from the data set WORK.TEMP1M.

NOTE: There were 3142 observations read from the data set WORK.TEMP2M.

NOTE: The data set WORK.TEMP12 has 4560 observations and 223 variables.

NOTE: DATA statement used (Total process time):

      real time           0.06 seconds

      cpu time            0.06 seconds

2 REPLIES 2
Reeza
Super User

You have duplicates for your BY variables in one data set. 

Astounding
PROC Star

You have a mismatch somewhere ... a combination of STCODE + CTCODE that appears in one data set but not the other.

hackathon24-white-horiz.png

2025 SAS Hackathon: There is still time!

Good news: We've extended SAS Hackathon registration until Sept. 12, so you still have time to be part of our biggest event yet – our five-year anniversary!

Register Now

How to Concatenate Values

Learn how use the CAT functions in SAS to join values from multiple variables into a single value.

Find more tutorials on the SAS Users YouTube channel.

SAS Training: Just a Click Away

 Ready to level-up your skills? Choose your own adventure.

Browse our catalog!

Discussion stats
  • 2 replies
  • 1315 views
  • 0 likes
  • 3 in conversation