Cara melakukan inner join di sas (dengan contoh)


Anda dapat menggunakan sintaks dasar berikut untuk melakukan penggabungan dalam dengan dua kumpulan data di SAS:

 proc sql ;
    create table final_table as
    select * from data1 as x join data2 as y
    on x.ID = y.ID;
quit ;

Contoh berikut menunjukkan cara menggunakan sintaksis ini dalam praktiknya.

Terkait: Bagaimana cara melakukan gabung kiri di SAS

Contoh: Inner Join di SAS

Anggaplah kita memiliki dua kumpulan data berikut di SAS:

 /*create datasets*/
data data1;
    input team $points;
    datalines ;
Mavs 99
Spurs 93
Rockets 88
Thunder 91
Warriors 104
Cavs 93
Nets 90
Hawks 91
;
run ;

data data2;
    input team $rebounds;
    datalines ;
Mavs 21
Spurs 18
Warriors 27
Hawks 29
Knicks 40
Raptors 30
;
run ;

/*view datasets*/
proc print data =data1;
proc print data =data2; 

Perhatikan bahwa kedua kumpulan data memiliki variabel yang sama: team .

Kita akan menggunakan sintaks berikut untuk melakukan penggabungan dalam dan membuat kumpulan data baru yang hanya berisi baris tempat variabel tim muncul di kedua kumpulan data:

 /*perform inner join*/
proc sql ;
	create table final_table as
	select * from data1 as x join data2 as y
	on x.team = y.team;
quit ;

/*view results of inner join*/
proc print data =final_table; 

Kumpulan data yang dihasilkan hanya berisi baris tempat variabel tim muncul di kedua kumpulan data.

Jika mengacu pada dua dataset sebelumnya, Anda akan melihat bahwa hanya ada empat tim yang muncul di kedua dataset tersebut: Mavs, Spurs, Warriors, dan Hawks.

Karena kami memilih untuk menggabungkan dua kumpulan data pada variabel tim , inilah empat tim yang juga muncul di kumpulan data akhir.

Sumber daya tambahan

Tutorial berikut menjelaskan cara melakukan tugas umum lainnya di SAS:

Cara menormalkan data di SAS
Bagaimana cara mengganti karakter dalam string di SAS
Bagaimana cara mengganti nilai yang hilang dengan nol di SAS
Cara menghapus duplikat di SAS

Tambahkan komentar

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *