DATA Step, Macro, Functions and more

Why one more observation after merge?

Reply
Occasional Learner
Posts: 1

Why one more observation after merge?

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

Super User
Posts: 19,820

Re: Why one more observation after merge?

Posted in reply to Orange1984

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

Super User
Posts: 5,511

Re: Why one more observation after merge?

Posted in reply to Orange1984

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

Ask a Question
Discussion stats
  • 2 replies
  • 100 views
  • 0 likes
  • 3 in conversation