Ilustrasi Model Ordinal
Dalam analisis statistik, seringkali kita dihadapkan pada variabel dependen yang bersifat kategori, namun memiliki urutan inheren. Contohnya termasuk tingkat kepuasan pelanggan (sangat tidak puas, tidak puas, netral, puas, sangat puas), tingkat pendidikan (SD, SMP, SMA, S1, S2, S3), atau penilaian risiko (rendah, sedang, tinggi). Dalam kasus seperti ini, model regresi logistik standar yang digunakan untuk variabel dependen biner tidak lagi memadai. Di sinilah regresi logistik ordinal berperan.
Regresi logistik ordinal adalah teknik pemodelan statistik yang digunakan ketika variabel dependen memiliki tiga kategori atau lebih yang memiliki urutan alami. Berbeda dengan regresi logistik multinomial yang memperlakukan setiap kategori sebagai independen, regresi logistik ordinal memanfaatkan informasi urutan ini untuk menghasilkan model yang lebih efisien dan dapat diinterpretasikan.
Prinsip dasar di balik regresi logistik ordinal adalah memodelkan probabilitas kumulatif dari sebuah observasi jatuh ke dalam kategori tertentu atau kategori yang lebih rendah. Secara matematis, ini seringkali direpresentasikan menggunakan fungsi logit atau probit. Model ini memperkirakan hubungan antara satu atau lebih variabel prediktor (independen) dan kemungkinan kumulatif dari respons ordinal.
Anda harus mempertimbangkan penggunaan regresi logistik ordinal ketika:
Contoh aplikasi meliputi:
R, sebagai bahasa pemrograman statistik yang kuat, menawarkan beberapa paket yang sangat baik untuk melakukan analisis regresi logistik ordinal. Salah satu paket yang paling umum dan direkomendasikan adalah ordinal.
ordinal.
install.packages("ordinal")
library(ordinal)
# Asumsikan 'data_saya' adalah dataframe Anda
# dan 'variabel_dependen_ordinal' adalah kolom variabel dependen Anda
data_saya$variabel_dependen_ordinal <- factor(data_saya$variabel_dependen_ordinal,
levels = c("Tingkat_Rendah", "Tingkat_Sedang", "Tingkat_Tinggi"),
ordered = TRUE)
clm() (Cumulative Link Models) dari paket ordinal untuk membangun model.
# Asumsikan 'variabel_prediktor_1' dan 'variabel_prediktor_2' adalah prediktor Anda
model_ordinal <- clm(variabel_dependen_ordinal ~ variabel_prediktor_1 + variabel_prediktor_2,
data = data_saya)
Dalam sintaks di atas:
variabel_dependen_ordinal adalah variabel respons Anda.~ memisahkan variabel dependen dari prediktor.variabel_prediktor_1 + variabel_prediktor_2 adalah variabel independen Anda.data = data_saya menentukan dataframe yang digunakan.summary() untuk melihat ringkasan model, termasuk koefisien, standar error, nilai p, dan titik potong (cut-points).
summary(model_ordinal)
Mari kita simulasikan data dan terapkan modelnya:
# Memuat paket yang diperlukan
library(ordinal)
# Membuat data simulasi
set.seed(123)
n <- 200
pred1 <- rnorm(n)
pred2 <- rnorm(n)
# Mensimulasikan probabilitas berdasarkan prediktor
prob_level_1 <- exp(0.5 + 1.2*pred1 - 0.8*pred2) / (1 + exp(0.5 + 1.2*pred1 - 0.8*pred2))
prob_level_2 <- exp(1.5 + 1.2*pred1 - 0.8*pred2) / (1 + exp(1.5 + 1.2*pred1 - 0.8*pred2))
# Membuat variabel dependen ordinal berdasarkan probabilitas
u <- runif(n)
y <- ifelse(u < prob_level_1, 1, ifelse(u < prob_level_2, 2, 3))
# Mengubah ke faktor yang terurut
y_factor <- factor(y, levels = c(1, 2, 3), labels = c("Rendah", "Sedang", "Tinggi"), ordered = TRUE)
data_simulasi <- data.frame(variabel_dependen = y_factor, prediktor_1 = pred1, prediktor_2 = pred2)
# Membangun model regresi logistik ordinal
model_simulasi <- clm(variabel_dependen ~ prediktor_1 + prediktor_2, data = data_simulasi)
# Melihat ringkasan model
summary(model_simulasi)
Dibandingkan dengan menggunakan regresi logistik multinomial (di mana urutan diabaikan) atau menganalisis setiap perbandingan biner secara terpisah, regresi logistik ordinal menawarkan beberapa keuntungan:
Meskipun kuat, ada beberapa hal yang perlu diperhatikan:
ordinal menyediakan cara untuk menguji asumsi ini.Secara keseluruhan, regresi logistik ordinal adalah alat yang ampuh dalam arsenal seorang analis data ketika berhadapan dengan variabel dependen yang terurut. Dengan dukungan paket ordinal di R, implementasinya menjadi lebih mudah dan efisien.