🔒 This topic is solved and locked.
Need further help from the community? Please
sign in and ask a new question.
- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
Posted 02-20-2019 03:52 PM
(753 views)
Hi Guys,
I need to merge two datasets by a variable that is included in other variable in the second dataset.
for example:
dataset#1
names | data |
ABLIM1 ABLIM KIAA0059 LIMAB1 | data1 |
AK3 AK3L1 AK6 AKL3L | data2 |
AK4 AK3 AK3L1 | data3 |
ADD3 ADDL | data4 |
PHYKPL AGXT2L2 PP9286 | data5 |
dataset#2
name | more data |
ABLIM | more data 1 |
ADDL | more data 2 |
DKG | more data 3 |
PRWR | more data 4 |
The result I need:
name | names | data | more data |
ABLIM | ABLIM1 ABLIM KIAA0059 LIMAB1 | data1 | more data 1 |
ADDL | ADD3 ADDL | data4 | more data 2 |
DKG | more data 3 | ||
PRWR | more data 4 |
Thank you!
1 ACCEPTED SOLUTION
Accepted Solutions
- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
data one;
input names & $50. data $20.;
cards;
ABLIM1 ABLIM KIAA0059 LIMAB1 data1
AK3 AK3L1 AK6 AKL3L data2
AK4 AK3 AK3L1 data3
ADD3 ADDL data4
PHYKPL AGXT2L2 PP9286 data5
;
data two;
input name $ more_data & $15.;
cards;
ABLIM more data 1
ADDL more data 2
DKG more data 3
PRWR more data 4
;
proc sql;
create table want as
select a.*,b.names,data
from two a left join one b
on b.names contains strip(a.name);
quit;
2 REPLIES 2
- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
data one;
input names & $50. data $20.;
cards;
ABLIM1 ABLIM KIAA0059 LIMAB1 data1
AK3 AK3L1 AK6 AKL3L data2
AK4 AK3 AK3L1 data3
ADD3 ADDL data4
PHYKPL AGXT2L2 PP9286 data5
;
data two;
input name $ more_data & $15.;
cards;
ABLIM more data 1
ADDL more data 2
DKG more data 3
PRWR more data 4
;
proc sql;
create table want as
select a.*,b.names,data
from two a left join one b
on b.names contains strip(a.name);
quit;
- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
Thank you so much!