turn on suggestions

Auto-suggest helps you quickly narrow down your search results by suggesting possible matches as you type.

Showing results for

Find a Community

- Home
- /
- SAS Programming
- /
- General Programming
- /
- Need help with Merge

Topic Options

- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page

- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

08-17-2014 04:29 AM

Hi,

When I am merging 2 datasets- A and B with 247 and 18 observations respectively as below , I am getting 248 observations in the dataset AB. Is this correct?

As much as I know, the no.of observations in the new dataset AB should be 247. Need help in solving this problem. Appreciate it.

data AB AB_dummy;

length common_variable $ 50;

merge A (in=a) B (in=b);

by common_variable;

if a then output AB;

if a and not b then output AB_dummy;

run;

- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

Posted in reply to vjpkr

06-16-2017 03:42 PM

Most likely there is 1 common variable that is in A and also in B. Thus, when you condition on 'if a then output AB' you are picking up 247 observations from dataset A and 1 observation from dataset B, yielding 248 total observations in dataset AB.

- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

Posted in reply to vjpkr

06-16-2017 03:53 PM

My guess is that you have a duplicate in file b. e.g.:

data a; input common_variable $50.; cards; 1 2 3 4 5 ; data b; input common_variable $50.; cards; 1 2 3 3 4 5 ; data AB AB_dummy; length common_variable $ 50; merge A (in=a) B (in=b); by common_variable; if a then output AB; if a and not b then output AB_dummy; run;

Art, CEO, AnalystFinder.com