123.DATA STEP | INPUT | SQL JOINS --> INNER , LEFT , RIGHT , FULL IN DATA STEP MERGE STATEMENT

DATA STEP | INPUT | SQL JOINS --> INNER , LEFT , RIGHT , FULL IN DATA STEP MERGE STATEMENT


DATA DM;

 INPUT USUBJID  AGE SEX$ COUNTRY$;

 CARDS;

101 45 M USA

102 36 F UK

103 50 M CANADA

;

RUN;

PROC PRINT;RUN;


OUTPUT:

Obs USUBJID AGE SEX COUNTRY
1 101 45 M USA
2 102 36 F UK
3 103 50 M CANADA

DATA LAB;

 INPUT USUBJID  PARAMCD$  AVAL  AVISIT$;

 CARDS;

101 HGB 13.5 BASELINE

102 HGB 14.2 BASELINE

104 HGB 12.9 BASELINE

;

RUN;

PROC PRINT;RUN;


OUTPUT:

Obs USUBJID PARAMCD AVAL AVISIT
1 101 HGB 13.5 BASELINE
2 102 HGB 14.2 BASELINE
3 104 HGB 12.9 BASELINE


/*DATA STEP MERGE STATEMENT*/

/*INNER JOIN IN DATA STEP MERGE STATEMENT*/

DATA INNERJOIN;

 MERGE DM (IN=A)

                LAB(IN=B);

 BY USUBJID;

 IF A AND B;

RUN;

PROC PRINT;RUN;


OUTPUT:

Obs USUBJID AGE SEX COUNTRY PARAMCD AVAL AVISIT
1 101 45 M USA HGB 13.5 BASELINE
2 102 36 F UK HGB 14.2 BASELINE


/*LEFT JOIN IN DATA STEP MERGE STATEMENT*/

DATA LEFTJOIN;

 MERGE DM(IN=A)

                 LAB;

 BY USUBJID;

 IF A;

RUN;

PROC PRINT;RUN;


OUTPUT:

Obs USUBJID AGE SEX COUNTRY PARAMCD AVAL AVISIT
1 101 45 M USA HGB 13.5 BASELINE
2 102 36 F UK HGB 14.2 BASELINE
3 103 50 M CANADA   .  


/*RIGHT JOIN IN DATA STEP MERGE STATEMENT*/

DATA RIGHTJOIN;

 MERGE DM

                 LAB(IN=B);

 BY USUBJID;

 IF B;

RUN;

PROC PRINT;RUN;


OUTPUT:

Obs USUBJID AGE SEX COUNTRY PARAMCD AVAL AVISIT
1 101 45 M USA HGB 13.5 BASELINE
2 102 36 F UK HGB 14.2 BASELINE
3 104 .     HGB 12.9 BASELINE


/*FULL JOIN IN DATA STEP MERGE STATEMENT*/

DATA FULLJOIN;

 MERGE DM

                 LAB;

 BY USUBJID;

RUN;

PROC PRINT;RUN;


OUTPUT:

Obs USUBJID AGE SEX COUNTRY PARAMCD AVAL AVISIT
1 101 45 M USA HGB 13.5 BASELINE
2 102 36 F UK HGB 14.2 BASELINE
3 103 50 M CANADA   .  
4 104 .     HGB 12.9 BASELINE


PRACTICE AND COMMENT YOUR CODE: 

-->PLEASE FOLLOW OUR BLOG FOR MORE UPDATES.

TO FOLLOW OUR TELEGRAM CHANNEL CLICK HERE

Comments