Merge 문장 + By 문장
DATA output-SAS-dataset; MERGE input-SAS-data-set-1(IN=변수 1) input-SAS-data-set-2(IN=변수 2) … … ; BY 변수(들) ; RUN; |
◀예제▶
old1 |
|
old2 |
|
id |
name |
id |
amount |
1 |
A |
1 |
10 |
2 |
B |
1 |
20 |
3 |
C |
3 |
5 |
|
|
4 |
30 |
|
|
4 |
35 |
DATA basic old1_base old2_base old1old2 only_old1;
MERGE old1(in=X) old2(in=Y);
BY id ;
OUTPUT basic;
IF x THEN OUTPUT old1_base;
IF y THEN OUTPUT old2_base;
IF x & y THEN OUTPUT old1old2;
IF x & ^y THEN OUTPUT only_old1;
RUN;
id |
Name |
amount |
X |
Y |
1 |
A |
10 |
1 |
1 |
1 |
A |
20 |
1 |
1 |
2 |
B |
|
1 |
0 |
3 |
C |
5 |
1 |
1 |
4 |
|
30 |
0 |
1 |
4 |
|
35 |
0 |
1 |
표현식 |
의미 |
if x=1 and y=1 ; if x & y ; |
관측치의 by 변수 값이 old1과 old2 양 쪽 모두 있는 경우 선택. |
if x=1 ; if x ; |
관측치의 by 변수 값이 old1에 있는 경우 선택. |
if y=1 ; if y ; |
관측치의 by 변수 값이 old2에 있는 경우 선택. |
if x=1 and y=0 ; if x and ^y ; |
관측치의 by 변수 값이 old1에만 존재하는(old2에는 없는) 경우 선택. |
if x=0 or y=0 ; if ^x | ^y ; |
관측치의 by 변수 값이 old1과 old2 중 어느 한쪽에만 있는 경우 선택. |
Registration is now open for SAS Innovate 2025 , our biggest and most exciting global event of the year! Join us in Orlando, FL, May 6-9.
Sign up by Dec. 31 to get the 2024 rate of just $495.
Register now!