Analisis Regresi Logistik Biner

Helmi Tareq Alhamdi

Mei 21, 2023

Analisis Regresi

Analisis regresi digunakan untuk melihat hubungan antara satu atau lebih variabel penjelas (x) dengan variabel respon (y). Pada umumnya, analisis regresi menggunakan sebuah variabel respon yang berupa kuantitatif. Ketika variabel respon berupa kategori, maka analisis regresi yang digunakan adalah analisis regresi logistik. Regresi logistik adalah metode analisis yang menjelaskan hubungan antara variabel repon yang terdiri dari dua atau lebih kategori dengan satu atau lebih variabel penjelas. Jika variabel respon berupa dua kategori yaitu sukses dan gagal maka jenis regresi logistik yang digunakan adalah regresi logistik biner.

Contohnya disini peneliti memiliki data dari kaggle mengenai kanker paru-paru. Peneliti ingin mengetahui faktor-faktor yang memperngaruhi kanker paru-paru. Semoga dengan adanya penelitian ini bisa membantu masyarakat untuk mengetahui faktor-faktor yang mempengaruhi kanker dan bisa menjauhinya.

Sumber Data : Lung Cancer

Import Data

library(readxl)
## Warning: package 'readxl' was built under R version 4.2.2
LUNG_CANCER <- read_excel("D:/Portofolio/Logit Biner/survey lung cancer.xlsx")
LUNG_CANCER
## # A tibble: 8 x 4
##   SMOKING ALCOHOLISM LUNG_CANCER JUMLAH
##     <dbl>      <dbl>       <dbl>  <dbl>
## 1       0          0           0      6
## 2       0          1           0      4
## 3       1          0           0      6
## 4       1          1           0      3
## 5       0          0           1     40
## 6       0          1           1     75
## 7       1          0           1     65
## 8       1          1           1     90

SMOKING: 0 (NO) 1 (YES)

ALCOHOLISM: 0 (NO) 1 (YES)

LUNG_CANCER: 0 (NO) 1 (YES)

Tabel Kontingensi

TK <- xtabs(JUMLAH~SMOKING+ALCOHOLISM+LUNG_CANCER,data=LUNG_CANCER)
TK
## , , LUNG_CANCER = 0
## 
##        ALCOHOLISM
## SMOKING  0  1
##       0  6  4
##       1  6  3
## 
## , , LUNG_CANCER = 1
## 
##        ALCOHOLISM
## SMOKING  0  1
##       0 40 75
##       1 65 90

Dari output ini juga terlihat orang yang tidak kanker paru-paru dan terkena kanker paru-paru.

Regresi Logistik Biner Multiple

binom.multi <- glm(LUNG_CANCER~SMOKING+ALCOHOLISM,family = binomial(link="logit"),data=LUNG_CANCER,weights=JUMLAH)
summary(binom.multi)
## 
## Call:
## glm(formula = LUNG_CANCER ~ SMOKING + ALCOHOLISM, family = binomial(link = "logit"), 
##     data = LUNG_CANCER, weights = JUMLAH)
## 
## Deviance Residuals: 
##      1       2       3       4       5       6       7       8  
## -4.947  -4.882  -5.442  -4.543   3.339   2.797   3.393   2.423  
## 
## Coefficients:
##             Estimate Std. Error z value Pr(>|z|)    
## (Intercept)   1.9001     0.3931   4.834 1.34e-06 ***
## SMOKING       0.4796     0.4811   0.997   0.3189    
## ALCOHOLISM    1.0269     0.4941   2.078   0.0377 *  
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## (Dispersion parameter for binomial family taken to be 1)
## 
##     Null deviance: 140.16  on 7  degrees of freedom
## Residual deviance: 134.92  on 5  degrees of freedom
## AIC: 140.92
## 
## Number of Fisher Scoring iterations: 5

Berdasarkan hasil diatas diperoleh persamaan untuk taksiran peluang siswa menggunakan narkotika yaitu: alt text

x1 bernilai 1 untuk yang merokok

x2 bernilai 1 untuk pecandu alkohol

Karena alt text maka penggunaan rokok memiliki efek positif, atau dengan kata lain peluang terkena kanker paru-paru akan meningkat dengan meningkatnya pengguna rokok saat pecandu alcohol konstan.

Bergitu pula alt text maka pecandu alkohol memiliki efek positif, atau dengan kata lain peluang terkena kanker paru-paru akan meningkat dengan meningkatnya pecandu alkohol saat pengguna rokok konstan.

Uji Kecocokan dengan Metode Hosmer-Lemeshow

Hipotesis Uji

H0 : Model cocok dengan data pengamatan

H1 : Model tidak cocok dengan data pengamatan

Taraf Signifikansi

Alpha = 5%

Statistik Uji

library(ResourceSelection)
## Warning: package 'ResourceSelection' was built under R version 4.2.3
## ResourceSelection 0.3-5   2019-07-22
hl<-hoslem.test(binom.multi$y,fitted(binom.multi),g=4)
hl
## 
##  Hosmer and Lemeshow goodness of fit (GOF) test
## 
## data:  binom.multi$y, fitted(binom.multi)
## X-squared = 29.327, df = 2, p-value = 4.282e-07

Kriteri Uji

Karena alt text , maka H0 ditolak

Kesimpulan

Model tidak cocok dengan data pengamatan atau model logit belum layak digunakan pada taraf nyata 5%

Uji Simultan

Pengujian signifikansi parameter secara simultan dilakukan dengan menggunakan Maximum Likelihood Ratio.

Hipotesis

H0 : alt text ; (penggunaan alkohol dan rokok secara bersama-sama tidak berperan nyata terhadap penyakit kanker paru-paru)

H1 :Minimal ada satu alt text ; (penggunaan alkohol dan rokok secara bersama sama berperan nyata terhadap kanker paru-paru)

Taraf Signifikan

Alpha = 0,05

Statistik Uji

library(lmtest)
## Warning: package 'lmtest' was built under R version 4.2.3
## Loading required package: zoo
## Warning: package 'zoo' was built under R version 4.2.2
## 
## Attaching package: 'zoo'
## The following objects are masked from 'package:base':
## 
##     as.Date, as.Date.numeric
lrtest(binom.multi)
## Likelihood ratio test
## 
## Model 1: LUNG_CANCER ~ SMOKING + ALCOHOLISM
## Model 2: LUNG_CANCER ~ 1
##   #Df  LogLik Df  Chisq Pr(>Chisq)  
## 1   3 -67.459                       
## 2   1 -70.079 -2 5.2399    0.07281 .
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Kriteria Uji

Karena alt text maka H1 ditolak

Kesimpulan

Penggunaan Rokok (x1) dan pecandu alkohol (x2) secara bersama-sama tidak berperan nyata terhadap penyakit kanker paru-paru

Uji Parsial (Uji Wald)

Hipotesis Uji

H0 : alt text (variabel penjelas Xi berperan nyata terhadap variabel respon)

H1 : alt text (variabel penjelas Xi tidak berperan nyata terhadap variabel respon)

Taraf Signifikan

Alpha = 0,05

Statistik Uji

library(car)
## Warning: package 'car' was built under R version 4.2.2
## Loading required package: carData
## Warning: package 'carData' was built under R version 4.2.2
Anova(binom.multi,type="II",test="Wald")
## Analysis of Deviance Table (Type II tests)
## 
## Response: LUNG_CANCER
##            Df  Chisq Pr(>Chisq)  
## SMOKING     1 0.9937    0.31885  
## ALCOHOLISM  1 4.3193    0.03768 *
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Kriteria Uji

Untuk penggunaan rokok (x1), karena alt text maka H0 diterima

Untuk pecandu alkohol (x2), karena alt text maka H0 ditolak

Kesimpulan

variabel penjelas X1 atau pengguna rokok berperan nyata terhadap variabel respon (Kanker paru-paru) sebesar taraf nyata 5%

variabel penjelas X2 atau pecandu alkohol tidak berperan nyata terhadap variabel respon (Kanker paru-paru) sebesar taraf nyata 5%

Odds Ratio

library(questionr)
## Warning: package 'questionr' was built under R version 4.2.3
odds.ratio(binom.multi)
## Waiting for profiling to be done...
##                  OR   2.5 %  97.5 %         p    
## (Intercept) 6.68690 3.25825 15.4241 1.339e-06 ***
## SMOKING     1.61544 0.62548  4.2379   0.31885    
## ALCOHOLISM  2.79238 1.08281  7.7534   0.03768 *  
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Interpretasi

Setiap kenaikan nilai x1 (Pengguna Rokok) sebesar satu satuan akan merubah nilia odds atau peluang terkena kanker secara multiplikatif sebesar alt text kali, dengan syarat pengaruh variabel lain konstan. Dengan kata lain, peluang terkena kanker paru-paru bagi pengguna rokok adalah 1,61544 kali dibandingkan bukan pengguna rokok

Setiap kenaikan nilai X2 (Pecandu Alkohol) sebesar satu satuan akan menyebabkan perubahan odds ratio atau peluang pecandu alkohol secara multiplikatif sebesar alt text

kali, dengan syarat pengaruh variabel lain konstan. Dengan kata lain, peluang terkena kanker paru-paru bagi pecandu alkohol adalah 2.79238 kali dibandingkan bukan pecandu alkohol