Tutorial R : Membangkitkan Data Simulasi Sederhana pada Model Regresi Logistik

Salah satu pengembangan dari model regresi linier adalah model regresi logistik. Penjelasan lebih lengkap beserta dengan contohnya telah dibahas pada artikel :

Tutorial R : Analisis Regresi Logistik Biner Menggunakan R

Artikel ini akan membahas mengenai analisis regresi logistik, namun pembahasan akan fokus pada sudut pandang simulasi. Simulasi model regresi logistik dapat memberikan cara pandang baru bagaimana pengguna dapat membangkitkan suatu data, menentukan parameter, serta melakukan analisis guna menduga parameter yang telah ditentukan. Jika parameter dugaan mendekati parameter yang ditentukan, maka model analisis tersebut disimpulkan dapat mengevaluasi fenomena yang terjadi. Beberapa tahapan yang dilakukan untuk membangkitkan data simulasi model regresi logistik adalah sebagai berikut:


1. Rancangan Pembangkitan Data

Sebagai ilustrasi akan dibangkitkan suatu dataset yang menceritakan informasi mengenai kecenderungan suatu konsumen dalam membeli suatu produk pakaian merk tertentu. Variabel yang akan dibangkitkan antara lain adalah:

  • Y (Keputusan yang bernilai 1 untuk membeli dan 0 untuk tidak membeli)
  • X1 (Usia)
  • X2 (Pendapatan Bulanan)
  • X3 (Pekerjaan yang terdiri dari 5 kategori)

2. Membangkitkan Variabel Prediktor

Tahap selanjutnya adalah membangkitkan variabel prediktor atau fixed variable. Jika ingin disusun simulasi model regresi berganda 3 variabel maka perintah yang digunakan adalah sebagai berikut:

set.seed(1)
#membangkitkan 50 angka acak uniform rentang 15-45 (usia)
x1 = runif(50,15,45)
#membangkitkan 50 angka acak normal rataan 3500 dan varians 1000 (pendapatan)
x2 = (rnorm(50,3500,1000))/1000;x2
#membangkitkan angka acak 1 sampai 5 sebanyak 50 (kategori pekerjaan)
x3 = sample(c(1:5),size=50,replace=TRUE)

 

3. Menentukan Nilai Beta0, Beta1, Beta2, Beta3

Selanjutnya adalah menentukan koefisien untuk Beta0, Beta1, Beta2 dan Beta3. Penentuan nilai Beta0, Beta1, Beta2 dan Beta3 merupakan suatu skenario yang dapat disesuaikan masing-masing.

#menentukan nilai koefisien beta
b0 = 35
b1 = -1.26
b2 = 0.95
b3 = -1.05

 

4. Menentukan Peluang Binomial

Sebelum membangkitkan variabel Respons, sebelumnya adalah menentukan peluang binomial yang akan digunakan dengan menggunakan perintah sebagai berikut:

xb = b0+(b1*x1)+(b2*x2)+(b3*x3)
pr = exp(xb)/(1+exp(xb))


5. Menentukan Variabel Respons

Variabel Respons dapat ditentukan dengan menggunakan perintah sebagai berikut:

y = rbinom(50, 1, pr)

 

6. Menyusun Data

Setelah seluruh variabel dan koefisien ditentukan, selanjutnya adalah melakukan penyusunan dataset yang telah ditentukan dengan perintah sebagai berikut:

datasim = data.frame(y,x1,x2,x3)
View(datasim)

Hasil dari pembangkitan dataset tersebut adalah sebagai berikut:



Data tersebut telah menjelaskan terkait dengan y (keputusan membeli seorang konsumen), x1 (usia konsumen), x2 (pendapatan konsumen dengan satuan juta), dan x3 (lima kategori jenis pekerjaan). 

7. Melakukan Analisis Regresi Logistik

Setelah data hasil bangkitan telah siap, tahap selanjutnya adalah melakukan analisis regresi logistik untuk memastikan dan mengkonfirmasi nilai parameter beta yang telah ditentukan di awal dengan perintah sebagai berikut:

fit = glm(y ~ x1 + x2 + x3, family = binomial(link = logit), data = datasim)
summary(fit)

Hasil yang diperoleh adalah sebagai berikut:


Berdasarkan hasil yang diperoleh, seluruh variabel menunjukan hasil yang signifikan untuk intercept (b0) dan x1 (b1) (terlihat dari nilai p-value pada Pr(>|t|)). Jika ditinjau dari hasil dugaan parameter yaitu:
Dugaan beta0 = 34.5827      ~      b0 = 35
Dugaan beta1 = -1.2804      ~      b1 = 1.25
Dugaan beta2 = 0.8712      ~      b2 = 0.95
Dugaan beta3 = 2.0621      ~      b3 = -1.05

Hasil tersebut telah mendekati koefisien parameter asli/awal yang ditentukan khususnya pada b0 dan b1. Hasil bangkitan data maupun hasil pemodelan akan berbeda dari tampilan ini karena terdapat perintah pembangkitan data acak.

0 Response to "Tutorial R : Membangkitkan Data Simulasi Sederhana pada Model Regresi Logistik"

Post a Comment