TechTip

Menggabungkan dataset Stata : Merge

Sama seperti Append, Merge juga digunakan untuk menggabungkan dataset jika data yang dimiliki memiliki kesamaan variabel. Merge akan menggabungkan kedua data secara horizontal. 

Merge hanya bisa dilakukan jika kita sudah memakai satu dataset lalu ingin digabung dengan dataset yang lain. Merge bisa melakukan penggabungan antara one-to-one, one-to-many, many-to-one, many-to-many. 

Cara penggunaan merge bisa melalui toolbar Data > Combine datasets > Merge two datasets atau melalui command.

Berikut adalah beberapa command merge yang bisa digunakan dengan berpatokan pada konsep master + using = merge

1, One-to-one merge dari file data1 pada memori Stata (master) dengan file data2 (using) pada variabel 1. Dimana variabel kunci bisa di identifikasi secara unik pada setiap observasi di dataset masing-masing.

merge 1:1 v1 using data2

2. Seperti sebelumnya, tetapi variabel dua digunakan sebagai variabel baru yang menunjukan hasil merge

merge 1:1 v1 v2 using data2, generate(newv)

3. Many-to-one merge. Dimana variabel kunci tidak harus di identifikasi pada master data.

merge m:1 v1 v2 using data2

4. One-to-many merge on v1 and v2. Sama seperti m:1 hanya berbeda di urutan hasil merge nya.

merge 1:m v1 v2 using data2kunci

Contoh saya mempunyai dua file data. File data pertama berisi data kode wilayah dan kotanya diberi nama poscode1.dta . File data kedua berisi data kode wilayah,  kode pos, kelurahan dan kecamatan diberi nama poscode2.dta 




Lalu saya gunakan data poscode1.dta terlebih dahulu kemudian digabungkan dengan command

use poscode1.dta
merge 1:1 kodewilayah using poscode2.dta

Variabel kode wilayah merupakan variabel yang berada di kedua data tersebut. Sehingga ketika digabungkan, maka kedua data akan saling melengkapi dengan mengacu pada variabel kode wilayah.  Stata akan menunjukkan berapa banyak variabel yang sama, dan akan ada satu variabel baru muncul (_merge) yang akan menunjukkan berasal dari mana data teserbut. 

Untuk merge data mana yang digunakan akan memberikan hasil yang sama.

Pada hasil olahan Stata dibawah ini semua observasi sesuai antara kedua file, sehingga variabel _merge hanya menunjukkan matched(3).

Jika ada salah satu data kode wilayah yang saya hilangkan, maka akan terlihat hasil observasi ada yang tidak sesuai. Hasil olahan Stata dibawah ini ada observasi  yang tidak sesuai antara kedua file, sehingga variabel _merge menunjukkan matched(3) dan using only(2).  Using only(2) ini berarti hanya berasal dari file kedua. Jika tertulis master(1), maka artinya hanya berasal dari file pertama yang merupakan file utama yang digunakan.

Sumber dmerge dan data kode pos