Multiple Regresi Dummy Variable

Adakalanya kita mendapatkan satu variable yang bersifat categorical nominal seperti - Gender: Male, Female; atau ordinal seperti lulusan: SD, SMP, SMA, Univ.

Kita tahu bahwa regresi hanya bisa dilakukan pada variable numerical (interval, atau ratio) baik angkanya discreet atau continues.

Jika kita tetap ingin menguji variable categorical tsb kedalam persamaan regresi, apa trik nya?

Caranya buat Dummy Variable.

Sebagai contoh: Level Pendidikan (edulevel)

1=very low (VL)

2=somewhat low (SL)

3=somewhat high (SH)

4=very high (VH)


Nah kita bisa bikin 4 Dummy variable baru. Nanum, karena dummy variable hanya berisi 0 dan 1, maka jumlah variable yang akan dimasukkan dalam persamaan regresi hanya 3 saja.


Education level    VL  SL  SH

1    1    0   0

2                  0    1   0

3       0    0   1

4    0    0   0 (VH as baseline)


Dalam hal diatas, maka yang menjadi refensi adalah VH (tidak dimasukkan dalam persamaan regresi).

Kenapa begitu?

Anggap persamaan regresi:

y = a.VL + b.SL + c.SH + Cons

VH itu terjadi jika VL = 0, SL = 0, dan SH = 0

sehingga:

y = 0 + 0 + 0 + Cons

Artinya Cons itu lah yang menjadi VH nya.

Artinya tidak semua variable dummy itu perlu dimasukkan ke dalam persamaan regresi.


Misal kita ingin melihat korelasi antara Achiement (dependent) vs tingkat pendidikan (independent) dan Keinginan untuk Menguasai sesuatu hal - Mastery Goal (independent).

Dugaan kita adalah VH akan memberikan kontribusi positif terhadap Achieve, dibandingkan dengan VL. Dengan demikian ada baiknya VH yang dimunculkan dalam persamaan regresi, dan Cons nya adalah VL.

Education level    SL  SH  VH

1    0    0   0 (VL as baseline)

2                  1    0   0

3       0    1   0

4    0    0   1


Sehingga persamaan regresi:

y =  b.SL + c.SH + d.VH + Cons

Saat SL = 0, SH = 0, VH=0

maka:

y = 0 + 0 + 0 + Cons

Artinya Cons itu lah yang menjadi VL nya.

Cara interpretasinya:

Misal didapat nilai slope VH senilai 5.3, ini berarti pengaruh VH 5.3 point lebih tinggi daripada VL.


Contoh Kasus

Kita ingin melihat keterkaitan antara Achievement vs Mastery Goal dan Level Pendidikan. File xls bisa di download disini.



Terlihat kolom edlevel, value nya ada 4. Kita bisa buat 4 variable dummy. Disamping itu terlihat genderid juga ada 2 valuenya, dimana 1 = female, dan 0=male. Kita bisa juga membuat 2 variable Dummy untuk gender ini.

gen VL = (edlevel==1)

gen SL = (edlevel==2)

gen SH = (edlevel==3)

gen VH = (edlevel==4)

gen isFemale = genderid

gen isMale = (genderid==0)


Akan tetapi karena genderid hanya 2 kemungkinan valuenya dan variable ini sudah ada, maka kita tidak akan menggunakan variable isFemale atau isMale ini dalam regresi. Kita cukup menggunakan variable dummy genderid saja. Ingat teorinya, bahwa jika ada n dummy variable, maka yang digunakan dalam persamaan regresi hanya n-1. Satu variable yang tersisa akan terserap dalam Cons.



Terlihat bahwa 

achive = 5.26.genderid + .82.mgoal - 1.22.SL + 3.53.SH + 5.54VH + 11.16

Bagaimana interpretasi terhadap VL?

VL terjadi jika:

genderid = 0 (male)

mgoal = 0

edulevel : SL = 0, SH =0 , VH = 0

Jika kondisi ini tercapai maka VL = 11.16


Sebenarnya sampai disini sudah selesai regresi kita. Bisa disimpulkan bahwa:

genderid significant mempengaruhi achievement secara positif dengan slope 5.26

VH significant mempengaruhi achievement secara positif dengan slope 5.54

Variable lain tidak significant mempengaruhi achivement.


Tapi wait.. bagaimana dengan variable VL?


Sebelumnya disebutkan VL ini semua variable lain dalam regresi nilainya 0 ... salah satunya mgoal = 0 ... masalahnya di data yang di sampling nilai mgoal tidak ada yang 0.


Nilai mgoal berkisar antara 92.07 - 105.46.

Bagaimana supaya mgoal ini bisa mengandung nilai 0?

Karena ini interval, maka kita bisa geser nilai ini. Ingat bahwa nilai 0 pada interval bisa digeser. Contoh 0 celcius bisa digeser menjadi 32 pada fahrenheit. 

Catatan ingat kembali numerical variable bisa dalam bentuk interval, dan rasio. Jika rasio maka nilai 0 mutlak, tidak bisa digeser walau pakai unit lain (kg ke g). Contoh 0 kg = 0 g, walau sudah beda unit dari kg ke g, tetap saja nilai 0 nya sama.

Bagimana cara menggeser value mgoal? Kurangi saja dengan rata-rata (mean) nya. Di tabel mean 100.

Kita create variable baru yaitu mgoalcenter (interval).

gen mgoalcenter = mgoal - 100

regress achieve genderid mgoalcenter SL SH VH


Terlihat sekarang hasilnya, ternyata tidak berbeda dengan mgoal (sebelum di geser menjadi mgoalcenter)

achive = 5.26.genderid + .82.mgoalcenter - 1.22.SL + 3.53.SH + 5.54VH + 93.39


Interpretasi VH dan VL:

Disaat gender Male, dan masterygoalcenter = 0, level pendidikan VL akan menentukan achivement 93.39.

Jika gender Male, dan masterygoalcenter = 0, level pendidikan VH akan menentukan achivement 5.54 point diatas VL (5.54 + 93.39).


Contoh ke dua


file excel disini.

Kita ingin menemukan regresi antara Harga Mobil (Price) vs Kilometer (Milleage), Umur (Age), dan Kondisi (Condition).

Dalam hal ini Condition adalah Categorical Ordinal Variable, sehingga perlu dibuat dummy variablenya.

gen dExcel = (condition == "Excellent")

gen dGood = (condition == "Good")

gen dPoor = (condition == "Poor")

regress price mileage age dExcel dGood

regress price mileage age dExcel dPoor

regress price mileage age dGood dPoor


Hasil regress regress price mileage age dExcel dGood

Terlihat dGood tidak significant (P = 0.22 > 0.05). Sehingga dPoor tidak bagus untuk jadi baseline.


Hasil regress regress price mileage age dExcel dPoor


Terlihat bahwa dPoor tidak significant (P = 0.221 > 0.05), sehingga dGood sebagai baseline kurang cocok.

Hasil regress regress price mileage age dGood dPoor


Terlihat dengan dExcel sebagai baseline semua variable significant. Dengan demikian bisa disimpulkan persamaan regresinya:

price = -0.099.mileage - 762.21.age - 5637.56.dGood - 7695.7.dPoor + 29903.38

Interpretasi:

Pada contoh sebelumnya mgoal digeser menjadi mgoalcenter, ini semata agar mendapatkan interpretasi yang lebih logis terhadap variable edulevel. Dan ini dimungkinkan karena mgoal adalah interval, bukan nilai absolut.

Kembali ke persaaam regresi:

price = -0.099.mileage - 762.21.age - 5637.56.dGood - 7695.7.dPoor + 29903.38

Bagaimana menginterpretasikan dExcel, karena milliage dan age dalam data yang disampling tidak ada dalam range 0.

Bisa saja nilai mileage dan age di geser ke tengah dengan mengurangkan terhadap rata-ratanya.

gen mileagecenter = mileage - 54905.1
gen agecenter = age - 5.2

regress price mileagecenter agecenter dExcel dGood
regress price mileagecenter agecenter dExcel dPoor
regress price mileagecenter agecenter dGood dPoor 


Terlihat dengan menggunakan agecenter dan mileagecenter, hasil slope variable tidak berobah dibandingkan ketika menggunakan age dan mileage.Yang berbeda hanya Cons nya saja. 

Dengan demikian bisa disimpulkan persamaan regresinya:


price = -0.099.mileagecenter - 762.21.agecenter - 5637.56.dGood - 7695.7.dPoor + 20515.95

Interpretasi:

Interpretasi terhadap persamaan regresi diatas menjadi kurang logis disebabkan mileagecenter terdapat nilai minus, dan agecenter terdapat nilai minus. Tidak mungkin dalam realitanya km sebuah kendaraan negatif, dan umur kendaraan negatif.

Sehingga interpretasinya dikembalikan ke persamaan regresi awal.

price = -0.099.mileage - 762.21.age - 5637.56.dGood - 7695.7.dPoor + 29903.38

Dan interpretasinya sbb:

1. Jika mileage dan age = 0, dan mobil tsb kondisi Excelent, maka price nya $29903.38

2. Setiap kenaikian 1 mil, akan mengurangi nilai jual $0.099, dengan asumsi kondisi mobil Excelent dan usia mobil 0 (mobil baru)

3. Setiap kenaikan usia 1 tahun usia mobil maka akan menurunkan harga mobil $762.21, dengan asumsi kondisi mobil Excelent dan mileage 0 (mobil belum dibawa jalan).

4. Jika kondisi mobil Good, dengan mileage dan age 0, maka selisih harga dengan kondisi millage dan agec yang sama yaitu 0 tetapi mobil kondisi Excelent adalah -$5637.56. Artinya Mobil yang Excelent akan terjual lebih mahal $5637.56 dibandingkan mobil Good.

5. Jika kondisi mobil Poor, dengan mileage dan age 0, maka selisih harga dengan kondisi mileage dan age yang sama yaitu 0 tetapi mobil kondisi Excelent adalah -$7695.7. Artinya Mobil yang Excelent akan terjual lebih mahal $7695.7 dibanding mobil kondisi Poor.





Comments