Sas: cara menggabungkan dataset berdasarkan dua variabel
Anda dapat menggunakan sintaks dasar berikut untuk menggabungkan dua kumpulan data di SAS berdasarkan kecocokan dua variabel:
data final_data;
merge data1(in=a) data2(in=b);
by ID Store;
if a and b;
run ;
Contoh khusus ini menggabungkan kumpulan data yang disebut data1 dan data2 berdasarkan variabel yang disebut ID dan Store dan hanya mengembalikan baris yang memiliki nilai di kedua kumpulan data.
Contoh berikut menunjukkan cara menggunakan sintaksis ini dalam praktiknya.
Contoh: Menggabungkan Kumpulan Data di SAS Berdasarkan Dua Variabel
Misalkan kita memiliki kumpulan data berikut di SAS yang berisi informasi tentang tenaga penjualan suatu perusahaan:
/*create first dataset*/
data data1;
inputStoreID $;
datalines ;
1A
1B
1 C
2A
2C
3A
3 B
;
run ;
/*view first dataset*/
title "data1";
proc print data = data1;
Dan misalkan kita memiliki kumpulan data lain yang berisi informasi tentang penjualan yang dilakukan di toko berbeda oleh masing-masing rekanan:
/*create second dataset*/
data data2;
input Store ID $Sales;
datalines ;
1 to 22
1 B 25
2 to 40
2 B 24
2 C 29
3 to 12
3 B 15
;
run ;
/*view second dataset*/
title "data2";
proc print data = data2;
Kita dapat menggunakan pernyataan penggabungan berikut untuk menggabungkan dua kumpulan data berdasarkan nilai yang cocok di kolom ID dan Store , lalu hanya mengembalikan baris yang memiliki nilai di kedua kolom:
/*perform merge*/
data final_data;
merge data1(in=a) data2(in=b);
by ID Store;
if a and b;
run ;
/*view results*/
title "final_data";
proc print data =final_data;
Kumpulan data yang dihasilkan mengembalikan baris yang nilai kolom ID dan Tokonya cocok.
Catatan : Anda dapat menemukan dokumentasi lengkap untuk pernyataan penggabungan SAS di sini .
Sumber daya tambahan
Tutorial berikut menjelaskan cara melakukan tugas umum lainnya di SAS:
SAS: Cara melakukan penggabungan satu ke banyak
SAS: Cara menggunakan (in=a) dalam pernyataan penggabungan
SAS: Bagaimana cara menggabungkan jika A bukan B