Anda di halaman 1dari 14

NURFATRA & MEGAWATI

ANALISIS DATA KATEGORIK


Praktikum 6 : Regresi Logistik Ordinal dan Regresi Logistik Multinomial

1. Regresi Logistik Ordinal

Regresi logistik ordinal adalah salah satu analisis regresi yang digunakan untuk menganalisa
hubungan antara variabel respon dengan variabel prediktor, dimana variabel respon bersifat
polikotomus dengan skala ordinal. Polikotomus disini maksudnya adalah data kategorik di
mana kategori nya berjumlah lebih dari dua.

Model yang dapat dipakai untuk regresi logistik ordinal adalah model logit. Model ini
didapatkan dengan cara membandingkan peluang kumulatif yaitu peluang kurang dari atau
sama dengan kategori respon ke-j pada p variabel prediktor yang dinyatakan dalam vektor 𝑋,
𝑃(𝑌 ≤ 𝑗|𝑋) dengan peluang lebih besar daripada kategori respon ke-j, 𝑃(𝑌 > 𝑗|𝑋). Peluang
kumulatif, 𝑃(𝑌 ≤ 𝑗|𝑋) didefinisikan sebagai berikut:

𝑝
exp⁡(𝛽0𝑗 +∑𝑘=1 𝛽𝑘 𝑥𝑘 )
𝑃(𝑌 ≤ 𝑗|𝑋) = 1+⁡exp⁡(𝛽 𝑝 (1)
0𝑗 +∑𝑘=1 𝛽𝑘 𝑥𝑘 )

Keterangan : j = 1,2, …, j adalah kategori respon.

❖ Asumsi regresi logistik ordinal

Berbeda dengan regresi linier yang memiliki banyak asumsi, regresi logistik ordinal hanya
memiliki satu asumsi yang harus terpenuhi. Asumsi tersebut adalah non-multikolinieritas. Pada
analisis regresi logistik ordinal tidak diperkenankan terdapat kasus multikolinieritas. Artinya,
antar variabel independen pada model tidak boleh ada korelasi yang siginifikan. Untuk
mengetahui ada tidaknya kasus multikolinieritas dapat menggunakan.
1. Koefisien korelasi. Asumsi terpenuhi jika p-value korelasi > 𝛼
2. Nilai VIF (Variance Inflantion Factor). Asumsi terpenuhi jika VIF < 10
3. Nilai Tolerance. Asumsi terpenuhi jika Nilai Tolerance > 0,01.
❖ Langkah-Langkah Analisis Regresi Logistik Ordinal
Adapun langkah-langkah dalam analisis regresi logistik ordinal yaitu sebagai berikut:
1. Pembuatan dan Pendugaan Model Regresi Logitik
Membuat model regresi logistik menggunakan persamaan (1)
2. Melakukan uji kecocokan model atau Goodness of Fit
Uji ini untuk mengetahui apakah model yang dibentuk sudah baik atau belum.
Pengujian dapat dilakukan menggunakan Uji Ordinal Hosmer and Lemeshow,
Pulksteni and Robinson, Pearson dan Deviance Chi Square, serta Uji Lipsitz.
Hipotesis
𝐻0 :⁡⁡Model logit layak untuk digunakan (Tidak ada perbedaan antara observasi dan
prediksi)
𝐻1 :⁡⁡Model logit tidak layak untuk digunakan (Ada perbedaan antara observasi dan
prediksi)
Kriteria Pengujian
Tolak 𝐻0 jika 𝑝 − 𝑣𝑎𝑙𝑢𝑒 < ⁡𝛼
3. Pengujian Parameter
• Uji Statistik G (Uji Serentak)
Pengujian ini bertujuan untuk mengetahui ada tidaknya pengaruh variabel prediktor
terhadap variabel respon secara bersama-sama. Uji statistik G digunakan untuk
membandingkan model lengkap (model dengan variabel prediktor) terhadap model
yang hanya dengan konstanta (model tanpa variabel prediktor) untuk melihat apakah
model yang hanya dengan konstanta secara signifikan lebih baik dari model lengkap.
Hipotesis
𝐻0⁡ :⁡⁡𝛽1 = 𝛽2 = ⋯ = 𝛽𝑝 = 0
𝐻1 ∶ ⁡⁡𝑀𝑖𝑛𝑖𝑚𝑎𝑙⁡𝑎𝑑𝑎⁡𝑠𝑎𝑡𝑢⁡𝛽𝑝 ≠ 0, = 1,2, … , 𝑝⁡
Kriteria Pengujian
2
Tolak 𝐻0 jika 𝐺 > 𝑋𝛼(𝑝) atau 𝑝 − 𝑣𝑎𝑙𝑢𝑒 < ⁡𝛼
• Uji Wald (Uji Parsial)
Pengujian ini bertujuan untuk mengetahui ada tidaknya pengaruh variabel prediktor
terhadap variabel respon secara parsial atau sendiri-sendiri.
Hipotesis
𝐻0⁡ :⁡⁡𝛽𝑗 = 0 (Tidak ada pengaruh variabel prediktor ke-j terhadap variabel respon)
𝐻1 ∶ 𝛽𝑗 ≠ 0 (Ada pengaruh variabel prediktor ke-j terhadap variabel respon)
Kriteria Pengujian
2
Tolak 𝐻0 jika 𝑍 2 > 𝑋(𝛼,1) atau 𝑝 − 𝑣𝑎𝑙𝑢𝑒 < ⁡𝛼
4. Uji Koefisien Determinasi dengan Mc Faden, Cox and Snell dan nagelkerke
Pengujian dilakukan untuk melihat seberapa besar variabel-variabel independen
mempengaruhi nilai variabel dependen. Misalkan biila koefisisen nagelkerke sebesar
0,700 (70%) artinya bahwa variabel independen yang dibuat model mempengaruhi
70% terhadap variabel dependen.
5. Interpretasi Model
Jika model regresi logistik ordinal telah diuji dan hasil modelnya baik dan
signifikasnsinya nyata maka data tersebut dapat di interpretasikan dengan
menggunakan uji odds ratio menggunakan persamaan berikut.
𝑝
1 − 𝑝 𝑝(1 − 𝑞)
𝑂𝑅 = 𝑞 =
𝑞(1 − 𝑝)
1−𝑞
2. Regresi Logistik Multinomial
Analisis regresi logistik multinomial merupakan regresi logistik yang digunakan saat variabel
respon bersifat polychotomous atau multinomial dan berskala nominal dengan lebih dari dua
kategori. Apabila terdapat k yang berarti banyaknya kategori pada variabel independen maka
model logistik yang terbentuk sebanyak k – 1. Persamaan regresi logistik multinomial yaitu
sebagai berikut:
exp⁡(𝑔𝑘 (𝑥𝑖 ))
𝑃(𝑦 = 𝑘|𝑥𝑖 ) = (2)
1+∑𝑘−1
𝑗=0 exp⁡(𝑔𝑗 (𝑥𝑖 ))

Dengan 𝑔(𝑥) = 𝛽0 + 𝛽1 𝑥1 + ⋯ + 𝛽𝑝 𝑥𝑝
❖ Langkah-Langkah Analisis Regresi Logistik Multinomial
Adapun langkah-langkah dalam analisis regresi logistik ordinal yaitu sebagai berikut:
1. Pembuatan dan Pendugaan Model Regresi Logitik
Membuat model regresi logistik menggunakan persamaan (2)
2. Pengujian Parameter
• Uji Statistik G (Uji Serentak)
Pengujian ini bertujuan untuk mengetahui ada tidaknya pengaruh variabel prediktor
terhadap variabel respon secara bersama-sama. Uji statistik G digunakan untuk
membandingkan model lengkap (model dengan variabel prediktor) terhadap model yang
hanya dengan konstanta (model tanpa variabel prediktor) untuk melihat apakah model
yang hanya dengan konstanta secara signifikan lebih baik dari model lengkap.
Hipotesis
𝐻0⁡ :⁡⁡𝛽1 = 𝛽2 = ⋯ = 𝛽𝑝 = 0
𝐻1 ∶ ⁡⁡𝑀𝑖𝑛𝑖𝑚𝑎𝑙⁡𝑎𝑑𝑎⁡𝑠𝑎𝑡𝑢⁡𝛽𝑝 ≠ 0, = 1,2, … , 𝑝⁡
Kriteria Pengujian
2
Tolak 𝐻0 jika 𝐺 > 𝑋𝛼(𝑝) atau 𝑝 − 𝑣𝑎𝑙𝑢𝑒 < ⁡𝛼
• Uji Wald (Uji Parsial)
Pengujian ini bertujuan untuk mengetahui ada tidaknya pengaruh variabel prediktor
terhadap variabel respon secara parsial atau sendiri-sendiri.
Hipotesis
𝐻0⁡ :⁡⁡𝛽𝑗 = 0 (Tidak ada pengaruh variabel prediktor ke-j terhadap variabel respon)
𝐻1 ∶ 𝛽𝑗 ≠ 0 (Ada pengaruh variabel prediktor ke-j terhadap variabel respon)
Kriteria Pengujian
2
Tolak 𝐻0 jika 𝑍 2 > 𝑋(𝛼,1) atau 𝑝 − 𝑣𝑎𝑙𝑢𝑒 < ⁡𝛼
3. Uji Kebaikan Model
Uji kebaikan model (goodness of fit) penting dilakukan untuk mengetahui apakah model
yang diperoleh sesuai atau tidak.
Hipotesis
𝐻0⁡ :⁡⁡Model regresi logistik sesuai (tidak ada perbedaan yang nyata antara hasil
observasi dengan prediksi model)
𝐻1 ∶ Model regresi logistik sesuai (tidak ada perbedaan yang nyata antara hasil observasi
dengan prediksi model)
Kriteria Pengujian
Tolak 𝐻0 jika⁡𝐶̂ > 𝑋(𝛼,𝑣)
2
atau 𝑝 − 𝑣𝑎𝑙𝑢𝑒 < ⁡𝛼
4. Uji Koefisien Determinasi dengan Mc Faden, Cox and Snell dan nagelkerke
Pengujian dilakukan untuk melihat seberapa besar variabel-variabel independen
mempengaruhi nilai variabel dependen. Misalkan biila koefisisen nagelkerke
sebesar 0,700 (70%) artinya bahwa variabel independen yang dibuat model
mempengaruhi 70% terhadap variabel dependen.
5. Interpretasi Model
Intepretasi pada metode regresi logistik menggunakan nilai odds ratio. Odds ratio
adalah rasio kecenderungan adalah ukuran yang memperkirakan berapa besar
kecenderungan variabel-variabel independen terhadap variabel dependen. Uji odds
ratio menggunakan persamaan berikut.

𝑝(𝑌 = 1|𝑥 = 1, 𝑥 )/𝑝(𝑌=𝑘|𝑥=1,𝑥 )


𝜓 = 𝑝(𝑌 = 0|𝑥 = 1, 𝑥2 )/𝑝(𝑌=𝑘|𝑥=0,𝑥2) = ex𝑝[𝛽1 ]
2 2
Contoh Soal:

1. Regresi Logistik Ordinal

Misal ingin diketahui apakah terdapat pengaruh antara umur, jenis kelamin serta status
perkawinan terhadap tingkat partisipasi kerja bakti di suatu kelurahan. Tingkat partisipasi
tersebut diukur dalam 3 kategori, yaitu Tidak Pernah, Jarang dan Sering. Karena tingkat
partisipasi sebagai variabel dependen merupakan variabel kategorik berskala ordinal, maka
regresi logistik ordinal merupakan metode yang sesuai untuk mencapai tujuan tersebut.

Berikut tabel deskripsi dari data yang digunakan.

Langkah pertama yang harus dilakukan saat akan melakukan analisis data menggunakan R
adalah melakukan input data. Banyak cara yang dapat dilakukan untuk mengimport data, disini
saya menggunakan sintaks read_excel yang terdapat pada library (readxl)

#Input Data
library(readxl) #Mengaktifkan library readxl
data=read_excel(file.choose()) #Memilih file yang akan dianalisis

Setelah sintaks tersebut di-run, silahkan pilih data yang akan dianalisis. Jangan lupa untuk
menyimpan data dalam format .xlsx jika ingin menggunakan sintaks read_excel.
Untuk mengecek apakah data telah diinput secara benar, kita dapat mengetikkan sintaks
berikut.

#melihat tampilan data


View(data)

Maka data akan terlihat sebagai berikut.

Data tersebut terdiri dari 199 baris dan 4 kolom. Artinya, ada 199 responden yang akan
digunakan sebagai sampel penelitian.

Sebelum dilakukan pemodelan, cek terlebih dahulu apakah skala data sudah sesuai dengan tabel
deskripsi pada bagian awal. Ingat, terdapat 3 variabel kategorik pada data tersebut, yaitu tingkat
partisipasi, jenis kelamin dan status perkawinan. Kamu dapat mengecek informasi tersebut
melalui str()

> #melihat sruktur data


> str(data)
tibble [199 x 4] (S3: tbl_df/tbl/data.frame)
_$ age_______: num [1:199] 59 39 28 30 26 36 40 55 54 28 ...
_$ gender____: num [1:199] 1 0 0 1 1 1 0 1 0 1 ...
_$ married___: num [1:199] 1 1 1 1 0 1 1 1 1 0 ...
_$ kerjabakti: num [1:199] 1 1 1 2 1 1 1 1 1 3 ...

Dari output di atas, terlihat bahwa variabel age sudah benar karena merupakan data numerik,
sedangkan ketiga variabel lain yang seharusnya berskala kategorik harus diubah terlebih dahulu
menggunakan as.factor() agar menjadi data kategorik.

#Mengubah data integer menjadi kategorik


data$gender<-as.factor(data$gender)
data$married<-as.factor(data$married)
data$kerjabakti<-as.factor(data$kerjabakti)
Kemudian periksa kembali skala data menggunakan str().

> #memeriksa kembali sruktur data


> str(data)
tibble [199 x 4] (S3: tbl_df/tbl/data.frame)
_$ age_______: num [1:199] 59 39 28 30 26 36 40 55 54 28 ...
_$ gender____: Factor w/ 2 levels "0","1": 2 1 1 2 2 2 1 2 1 2 ...
_$ married___: Factor w/ 2 levels "0","1": 2 2 2 2 1 2 2 2 2 1 ...
_$ kerjabakti: Factor w/ 3 levels "1","2","3": 1 1 1 2 1 1 1 1 1 3 ..

Setelah semua skala data sudah sesuai dengan tabel deskripsi di awal. Langkah selanjutnya
adalah melakukan pemodelan regresi logistik ordinal menggunakan sintaks polr() yang terdapat
pada library "MASS".

#pembentukan model
library(MASS)
model_ord=polr(kerjabakti~age+gender+married, method='logistic',data=data)

Untuk melakukan pemodelan ini, nama variabel dependen ditulis sebelum tanda ~ dan semua
variabel independen ditulis setelah tanda ~. Method yang dipilih adalah logistik karena pada
tutorial kali ini kita akan menggunakan regresi logistik. Sebenarnya ada model lain seperti
probit, log-log atau cauchit. Model tersebut juga dapat digunakan menyesuaikan tujuan dan
variabel penelitian. Kemudian pada parameter data, tuliskan nama dataframe dari data yang
akan di analisis.

Sebelum dianalisis lebih jauh, jangan lupa untuk mengecek asumsi multikolinieritas. Pada
tutorial kali ini akan digunakan kriteria VIF.

> #uji asumsi multikolinieritas


> library(car)
> vif(model_ord)

Re-fitting to get Hessian

_____age __gender _married


1.888208 4.101683 9.830732
Warning message:
In vif.default(model_ord) : No intercept: vifs may not be sensible.

Dari output di atas diperoleh hasil bahwa semua nilai VIF < 10 sehingga asumsi non-
multikolinierias telah terpenuhi. Artinya, tidak ada korelasi yang kuat antar variabel
independen.

Setelah itu, akan dilanjukan dengan uji kesesuaian model dengan hipotesis sebagai berikut.

H0 : Model sesuai (tidak ada perbedaan antara observasi dan prediksi)

H1 : Model tidak sesuai (ada perbedaan antara observasi dan prediksi)


Pengujian akan dilakukan menggunakan lipsitz.test yang terdapat pada library
"generalhoslem".

> #Uji GoF


> library(generalhoslem)
> lipsitz.test(model_ord)

_______Lipsitz goodness of fit test for ordinal response models

data: formula: kerjabakti ~ age + gender + married


LR statistic = 13.096, df = 9, p-value = 0.1583

Berdasarkan uji hipotesis dan cara penarikan kesimpulan seperti yang telah dijelaskan pada
artikel sebelumnya, kita memperoleh informasi bahwa pada taraf signifikansi 5%, model sesuai
karena p-value 0.1583 > 0.05. Artinya, tidak ada perbedaan antara observasi dan prediksi).

Karena model telah sesuai, maka akan dilanjutkan dengan uji serentak dengan hipotesis sebagai
berikut,

H0: (tidak ada pengaruh variabel independen terhadap variabel


dependen secara bersama-sama)

H1: Minimal ada satu , j = 1, 2, ..., p (ada pengaruh variabel independen terhadap
variabel dependen secara bersama-sama)

Pengujian akan dilakukan menggunakan pR2 yang terdapat pada library "pscl".

> #Uji serentak


> library(pscl)
> pR2(model_ord)

fitting null model for pseudo-r2


_________-llh ______llhNull _________G2 __McFadden ______r2ML ______r2CU
-183.98190937 -199.03783777 30.11185680 0.07564355 0.14042385 0.16239300

> qchisq(0.95, 3)
[1] 7.814728

Berdasarkan uji hipotesis dan cara penarikan kesimpulan seperti yang telah dijelaskan pada
artikel sebelumnya, kita memperoleh informasi bahwa pada taraf signifikansi 5%, H0 ditolak
karena G2 = 30.11 > 𝑋 2 (0.05,3) = 7.81. Artinya, ada pengaruh variabel independen terhadap
variabel dependen secara bersama-sama.

Untuk mengetahui variabel mana saja yang berpengaruh secara parsial, maka akan dilanjutkan
dengan uji parsial (Uji Wald).

H0 : (tidak ada pengaruh variabel prediktor ke-j terhadap variabel respon)


H1 : (ada pengaruh variabel prediktor ke-j terhadap variabel respon)

j = 1, 2, ... , p

> #Uji Parsial


> koef=coef(summary(model_ord))
> p_val_parsial=pnorm(abs(koef[,'t value']),lower.tail=FALSE)*2
> tabel_uji_parsial=cbind(koef,'p value'=p_val_parsial)
> tabel_uji_parsial

_______________Value Std. Error___ t value _____p value


age _____-0.03629359 0.01176745 -3.0842346 2.040766e-03
gender1 __0.28601940 0.27749170 _1.0307314 3.026668e-01
married1 -1.04736526 0.33354681 -3.1400848 1.688989e-03
1|2 _____-2.48267904 0.46822257 -5.3023481 1.143226e-07
2|3 ______0.11737143 0.42394305_ 0.2768566 7.818902e-01

Berdasarkan uji hipotesis dan cara penarikan kesimpulan, kita memperoleh informasi bahwa
pada taraf signifikansi 5%, ketiga variabel secara individual mempengaruh tingkat partisipasi
masyarakat dalam mengikuti kerja bakti. Hal ini dikarenakan p-value ketiga variabel < 0.05.

Dari output di atas, dapat dituliskan model logit yang terbentuk. Misal Model untuk menghitung
berapa peluang responden tidak pernah mengikuti kerja bakti

Untuk menginterpretasikan model, maka dapat dilakukan dengan menghitung nilai odds rasio
terlebih dahulu.

> #Odds Ratio


> exp(coef(model_ord))
______age __gender1 _married1
0.9643571 1.3311183 0.3508610

Dari output tersebut, diperoleh informasi sebagai berikut.

1. Untuk variabel umur, didapatkan nilai odds ratio sebesar 0.96, artinya jika umur responden
bertambah 1 tahun, maka kecenderungan ia untuk semakin terlibat kerja bakti sebesar 0.96
kali dibandingkan umur sebelumnya. Hal ini menunjukkan semakin tua umur seseorang,
maka kecenderungan untuk terlibat akan semakin menurun.
2. Untuk variabel jenis kelamin, didapatkan nilai odds ratio sebesar 1.33, artinya responden
perempuan memiliki kecenderungan 1.33 kali lebih besar untuk semakin terlibat dalam kerja
bakti dibandingkan responden pria.
3. Untuk variabel status perkawinan, didapatkan nilai odds ratio sebesar 0.35, artinya
responden yang sudah menikah memiliki kecenderungan 0.35 kali untuk semakin terlibat
dalam kerja bakti dibandingkan responden yang belum menikah.

4. Regresi Logistik Multinomial

No X1 X2 X3 X4 Y
1 1 34 41 29 3
2 0 34 41 36 1
3 0 39 44 26 3
4 0 37 42 33 3
5 0 39 40 39 3
6 1 42 42 31 1
7 0 31 46 39 3
8 0 50 40 34 3
9 1 39 33 42 3
10 0 34 46 39 3
11 1 34 40 39 3
12 0 39 38 47 2
13 0 47 44 36 3
14 1 36 37 42 3
15 1 35 40 51 3
16 0 44 39 34 1
17 1 28 43 44 1
18 1 42 38 36 3
⋮ ⋮ ⋮ ⋮ ⋮ ⋮
201 0 73 73 69 2

Anda mungkin juga menyukai