I have
A:
Name score1
a1 80
a2 70
a3 60
B: name score2
a1 70
a3 60
a4 50
What I want to get is:
name score1 score2
a1 80 70
a2 70 .
a3 60 60
a4 . 50
but if I use full join
what I get is:
name score1 score2
a1 80 70
a2 70 .
a3 60 60
. . 50
how to solve this issue?
Please post your code.
You will need to use the COALESCE function for the name column from both tables.
Given your data as posted, a DATA step is much better:
data want;
merge a b;
by name;
run;
@walterwang wrote:
I have
A:
Name score1
a1 80
a2 70
a3 60
B: name score2
a1 70
a3 60
a4 50
What I want to get is:
name score1 score2
a1 80 70
a2 70 .
a3 60 60
a4 . 50
but if I use full join
what I get is:
name score1 score2
a1 80 70
a2 70 .
a3 60 60
. . 50
how to solve this issue?
Please post your code.
You will need to use the COALESCE function for the name column from both tables.
Given your data as posted, a DATA step is much better:
data want;
merge a b;
by name;
run;
@walterwang wrote:
I have
A:
Name score1
a1 80
a2 70
a3 60
B: name score2
a1 70
a3 60
a4 50
What I want to get is:
name score1 score2
a1 80 70
a2 70 .
a3 60 60
a4 . 50
but if I use full join
what I get is:
name score1 score2
a1 80 70
a2 70 .
a3 60 60
. . 50
how to solve this issue?
It's finally time to hack! Remember to visit the SAS Hacker's Hub regularly for news and updates.
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.
Ready to level-up your skills? Choose your own adventure.