Studi Kasus Penerapan Regresi Logistik Biner Untuk Menganalisis Kepuasan Penumpang Penerbangan Invistico Airline

Ni Putu Adelia Putri

2023-05-30


1 PENDAHULUAN

1.1 Latar Belakang

Dalam pekerjaan yang bergerak di bidang jasa pelayanan, kepuasan pelanggan tentunya menjadi hal penting guna ditingkatkannya performa dari masing-masing penyedia jasa. Begitu pula dengan jasa penerbangan yaitu Invistico Airline. Studi Kasus ini bertujuan untuk mengetahui model regresi logistik biner dari kepuasan penumpang penerbangan Invistico Airline dan faktor yang mempengaruhi kepuasan tersebut. Faktor yang akan diuji adalah jarak tempuh penerbangan (dalam kilometer) dan delay keberangkatan penerbangan (dalam menit). Regresi Logistik Biner digunakan dalam studi kasus ini karena variabel respon yang digunakan merupakan variabel biner atau kategorik yang nilainya adalah 0 dan 1 (Agus, 2017).

1.2 Tujuan

  1. Mengetahui model regresi logistik biner dari kepuasan penumpang penerbangan Invistico Airline
  2. Mengetahui variabel yang berpengaruh signifikan terhadap kepuasan penumpang penerbangan Invistico Airline

2 TINJAUAN PUSTAKA

2.1 Statistika Deskriptif

Statistika deskriptif merupakan suatu cara yang digunakan untuk menganalisis data dengan mendeskripsikan atau menggambarkan data yang telah terkumpul sebagaimana adanya tanpa bermaksud membuat kesimpulan. Statistika deskriptif dapat digunakan untuk mendeskripsikan data sampel tanpa adanya keharusan membuat kesimpulan yang berlaku untuk populasi dimana sampel diambil. Contoh dari statistika deskriptif adalah penyajian data melalui tabel, grafik, diagram, piktogram, perhitungan modus, median, mean (rata-rata), perhitungan desil, persentil, perhitungan penyebaran data, dll (Amirotun, 2016).

2.2 Analisis Regresi Logistik Biner

Regresi logistik adalah sebuah pendekatan untuk membuat model prediksi seperti halnya regresi linear atau yang biasa disebut dengan istilah Ordinary Least Squares (OLS) regression. Perbedaan keduanya adalah pada regresi logistik, peneliti memprediksi variabel terikat yang berskala dikotomi. Skala dikotomi yang dimaksud adalah skala data nominal dengan dua kategori, misalnya: Ya dan Tidak, Baik dan Buruk atau Tinggi dan Rendah. Apabila pada OLS mewajibkan syarat atau asumsi bahwa error varians (residual) terdistribusi secara normal. Sebaliknya, pada regresi logistik tidak dibutuhkan asumsi tersebut sebab regresi logistik mengikuti distribusi logistik (Agus, 2017).

Regresi Logistik dapat dibedakan menjadi 2, yaitu:

  1. Regresi Logistik Biner (Binary Logistic Regression)

    Regresi Logistik biner digunakan ketika hanya ada 2 kemungkinan variabel respon (Y), misal sukses atau tidak sukses.

  2. Regresi Logistik Multinomial (Multinomial Logistic Regression)

    Regresi Logistik Multinomial digunakan ketika pada variabel respon (Y) terdapat lebih dari 2 kategorisasi.

Distribusi yang digunakan regresi logistik biner adalah distribusi Bernoulli, sehingga didapat persamaan:

\[ f(y_i)=\pi_i^{yi}(1-\pi_i)^{1-yi} \]

\(y_i\) adalah peluang acak ke-i. Jika diketahui variabel respon bernilai 0 dan q maka \(p=(Y=1|X=x_i)=\pi(x_i)\) dan \(p=(Y=0|X=x_i)=1-\pi(x_i)\)

Menurut Varamita (2017), model regresi logistik diasumsikan bahwa variabel bebas harus saling bebas, sehingga variabel biner memiliki sebaran binom. Kemudian, didapat model regresi logistik sebagai berikut:

\[ \pi(x)=\frac{exp(\beta_0+\beta_1x_1+...+\beta_nx_n)}{1+exp(\beta_0+\beta_1x_1+...+\beta_nx_n)} \]

Keterangan:

n : banyak variabel prediktor

\(\pi(x)\) : probabilitas sukses dengan nilai probabilitas \(\pi(x)\) berada di antara 0 dan 1

Kemudian persamaan tersebut ditransformasi, sehingga didapat persamaan regresi logistik:

\[ g(x)=ln(\frac{\pi(x)}{1-\pi(x)})=\beta_0+\beta_1x_1+...+\beta_nx_n \]

2.2.1 Asumsi Nonmultikolinieritas

Asumsi dalam model persamaan yang tidak boleh dilanggar adalah multikolinieritas, karena dapat memberikan efek yang fatal yaitu model menjadi non identified yang berarti parameter dalam model tidak dapat diestimasi. Metode untuk menguji adanya multikolinieritas dapat dilihat dari variance inflation factor (VIF) yang diperoleh dari rumus: \[ VIF=\frac{1}{Tolerance} \] Kemudian, untuk mencari nilai R-Square adalah: \[ R^2=1-\frac{SS_{error}}{SS_{total}} \] Batas nilai VIF adalah 10. Jika VIF lebih dari 10, maka terjadi multikolinieritas tinggi antar variabel bebas dengan variabel bebas lainnya. Regresi yang baik memiliki VIF di sekitar angka 1.

2.2.2 Uji Signifikansi Keseluruhan Model

Uji rasio likelihood merupakan uji serentak yang membandingkan model yang lebih baik jika model tersebut mengandung variabel prediktor atau model yang tidak mengandungg variabel prediktor.

  • Hipotesis

    H0 : \(\beta_m=0\), dengan \(m=1,2,...,k\)

    H1 : \(\beta_m\) tidak sama dengan \(0\), dengan \(m=1,2,...,k\)

  • Statistik Uji

\[ G=2[\sum_{i=1}^{n}[y_i\ln(\hat{\pi_i})+(1-y_i)\ln(1-\hat{\pi_i})]-[n_1\ln(n_1)+n_0\ln(n_0)-n\ln(n)]] \]

Keterangan:

\(n_0\) : Banyaknya pengamatan yang bernilai Y=0

\(n_1\) : Banyaknya pengamatan yang bernilai Y=1

\(n\) : Total pengamatan

  • Daerah Keputusan

    Tolak H0, jika nilai \(G>\chi^2(\alpha-p)\)

    Terima H0, jika nilai \(G<\chi^2(\alpha-p)\)

2.2.3 Uji Parsial Parameter Model

Uji Wald digunakan untuk mengetahui peranan masing-masing variabel prediktor terhadap variabel respon.

  • Hipotesis

    H0 : \(\beta_j=0\), dengan \(j=1,2,...,k\)

    H1 : \(\beta_j\) tidak sama dengan \(0\), dengan \(j=1,2,...,k\)

  • Statistik Uji

\[ W_j=[\frac{\hat{\beta}_j}{\hat{SE}(\hat{\beta_j})}]^2 \]

\[ {\hat{SE}(\hat{\beta_j})}=\sqrt{\frac{\pi_j(1-\pi_j)}{n}},j=1,2,...,k \]

  • Daerah Keputusan

    Tolak H0, jika nilai \(W>\chi^2(\alpha-p)\)

    Terima H0, jika nilai \(W<\chi^2(\alpha-p)\)

2.2.4 Odds Ratio

Odds ratio merupakan angka kecenderungan yang didefinisikan sebagai rasio antara jumlah individu yang mengalami peristiwa tertentu dengan jumlah individu yang tidak mengalami peristiwa tersebut, baik sampel maupun populasi. Untuk peluang \(\pi\) adalah berhasil, maka nilai odds ratio didefinisikan sebagai berikut:

\[ \Omega_i=\frac{\pi_i}{1-\pi_i} \] Rasio kemungkinan \(\Omega_1\) dan \(\Omega_2\) sebagai berikut:

\[ \psi=\frac{\Omega_1}{\Omega_2}=\frac{\frac{\pi_1}{1-\pi_1}}{\frac{\pi_2}{1-\pi_2}} \]

2.2.5 Klasifikasi

Prosedur klasifikasi dihitung dengan tujuan untuk mengetahui apakah data klasifikasi sudah benar atau tidak. Prosedur klasifikasi yang digunakan pada regresi logistik adalah apparent error rate (APER).

Matriks Konfusi
\(y_1\) \(y_2\)
\(y_1\) \(n_{11}\) \(n_{12}\)
\(y_2\) \(n_{21}\) \(n_{22}\)

Keterangan:

\(n_{11}\) : jumlah dari subyek \(y_{1}\) sudah tepat diklasifikasikan sebagai \(y_{1}\)

\(n_{12}\) : jumlah dari subyek \(y_{1}\) belum tepat diklasifikasikan sebagai \(y_{2}\)

\(n_{21}\) : jumlah dari subyek \(y_{2}\) sudah tepat diklasifikasikan sebagai \(y_{1}\)

\(n_{22}\) : jumlah dari subyek \(y_{2}\) sudah tepat diklasifikasikan sebagai \(y_{2}\)

Nilai APER dihasilkan dari perhitungan (Ramandhani, Sudarno, & Safitri, 2017): \[ APER(\%)=\frac{n_{12}+n_{21}}{n_{11}+n_{12}+n_{21}+n_{22}} \]

2.2.6 Uji Kelayakan Model

Uji kelayakan model atau disebut Goodness of fit menilai seberapa baik model regresi menjelaskan data yang diamati.

  • Hipotesis

    H0 : Model yang digunakan layak atau sesuai

    H1 : Model yang digunakan tidak layak atau sesuai

  • Statistik Uji

\[ \hat{C}=\sum_{j=1}^{g}\frac{(o_j-n_j'\bar{\pi_j})^2}{n_j'\bar{\pi_j}(1-\bar{\pi_j})} \]

Dimana \(\bar{\pi_j}\) dan \(o_j\) dengan rumus sebagai berikut:

\[ \bar{\pi_j}=\sum_{k=1}^{c_j}\frac{m_k{\hat{\pi}(x_k)}}{n_k'} \] \[ o_j=\sum_{j=1}^{g}y_j \]

Keterangan:

g = Jumlah group

\(m_k\) = Banyaknya subjek

\(n_j'\) = Jumlah subjek pada group ke-j

\(o_j\) = Jumlah nilai variabel respon pada group ke-j

\(\bar{\pi_j}\) = Rata-rata estimasi probabilitas

  • Daerah Keputusan

    Tolak H0, jika nilai \(\hat{C}>\chi^2(p-2)\)

    Terima H0, jika nilai \(\hat{C}<\chi^2(p-2)\)

3 SOURCE CODE

3.1 Library

> library(readr)
> library(generalhoslem)
> library(pscl)
> library(car)

3.2 Data

Data yang digunakan adalah data sekunder yang diambil dari kaggle. Dari data ini diambil 2 variabel independen, yaitu jarak tempuh penerbangan (dalam kilometer) (X1) dan delay keberangkatan penerbangan (dalam menit) (X2) serta 1 variabel dependen, yaitu kepuasan penumpang (0 = Puas, 1 = Tidak Puas) (Y) dengan memuat 100 amatan. Berikut adalah source code untuk menginput data dan membuat data frame dari data tersebut:

> datalaprak <- read_csv("C:/Users/TUF GAMING/Downloads/Invistico_Airline/Data_Flight1.csv")
> str(datalaprak)
spc_tbl_ [100 × 21] (S3: spec_tbl_df/tbl_df/tbl/data.frame)
 $ Satisfaction                     : num [1:100] 0 1 0 0 0 1 1 1 0 1 ...
 $ Gender                           : num [1:100] 0 1 0 0 0 1 1 1 0 1 ...
 $ Age                              : num [1:100] 34 30 44 50 68 19 13 31 33 60 ...
 $ Class                            : chr [1:100] "Eco" "Eco" "Eco" "Eco" ...
 $ Flight_Distance                  : num [1:100] 1693 1582 51 1248 1117 ...
 $ Seat comfort                     : num [1:100] 0 1 0 0 0 1 1 1 0 1 ...
 $ Departure/Arrival time convenient: num [1:100] 0 0 0 0 0 0 0 0 0 0 ...
 $ Food and drink                   : num [1:100] 0 0 0 0 0 0 0 0 0 1 ...
 $ Gate location                    : num [1:100] 3 3 3 3 3 4 4 4 4 1 ...
 $ Inflight wifi service            : num [1:100] 3 1 4 2 3 1 5 4 2 2 ...
 $ Inflight entertainment           : num [1:100] 4 0 3 5 3 0 0 0 0 1 ...
 $ Online support                   : num [1:100] 3 1 4 5 3 1 5 4 2 2 ...
 $ Ease of Online booking           : num [1:100] 1 1 2 5 3 1 5 4 2 2 ...
 $ On-board service                 : num [1:100] 1 2 2 5 3 4 5 3 3 3 ...
 $ Leg room service                 : num [1:100] 0 4 0 0 0 4 2 3 2 3 ...
 $ Baggage handling                 : num [1:100] 1 3 2 5 1 5 5 4 5 4 ...
 $ Checkin service                  : num [1:100] 4 5 4 5 2 3 4 3 2 3 ...
 $ Cleanliness                      : num [1:100] 1 1 2 5 3 5 4 4 5 4 ...
 $ Online boarding                  : num [1:100] 3 1 5 3 5 1 5 4 2 2 ...
 $ Departure_Delay_in_Minutes       : num [1:100] 0 0 0 1 0 0 4 0 0 14 ...
 $ Arrival Delay in Minutes         : num [1:100] 0 2 4 3 0 0 2 0 0 11 ...
 - attr(*, "spec")=
  .. cols(
  ..   Satisfaction = col_double(),
  ..   Gender = col_double(),
  ..   Age = col_double(),
  ..   Class = col_character(),
  ..   Flight_Distance = col_double(),
  ..   `Seat comfort` = col_double(),
  ..   `Departure/Arrival time convenient` = col_double(),
  ..   `Food and drink` = col_double(),
  ..   `Gate location` = col_double(),
  ..   `Inflight wifi service` = col_double(),
  ..   `Inflight entertainment` = col_double(),
  ..   `Online support` = col_double(),
  ..   `Ease of Online booking` = col_double(),
  ..   `On-board service` = col_double(),
  ..   `Leg room service` = col_double(),
  ..   `Baggage handling` = col_double(),
  ..   `Checkin service` = col_double(),
  ..   Cleanliness = col_double(),
  ..   `Online boarding` = col_double(),
  ..   Departure_Delay_in_Minutes = col_double(),
  ..   `Arrival Delay in Minutes` = col_double()
  .. )
 - attr(*, "problems")=<externalptr> 
> Y <- as.factor(datalaprak$Satisfaction)
> X1 <- datalaprak$Flight_Distance
> X2 <- datalaprak$Departure_Delay_in_Minutes
> datareglog <- data.frame(X1,X2,Y)
> str(datareglog)
'data.frame':   100 obs. of  3 variables:
 $ X1: num  1693 1582 51 1248 1117 ...
 $ X2: num  0 0 0 1 0 0 4 0 0 14 ...
 $ Y : Factor w/ 2 levels "0","1": 1 2 1 1 1 2 2 2 1 2 ...

3.3 Pie Chart

> Satisfaction = table(datareglog$Y)
> Satisfaction

 0  1 
52 48 
> kategori = c("Puas = ","Tidak Puas =")
> persentase = round(Satisfaction/sum(Satisfaction)*100)
> kategori = paste(kategori,persentase)
> kategori = paste(kategori,'%',sep ='')
> pie (Satisfaction,labels=kategori,col=c('pink','light blue'), 
+      main="Persentase Kepuasan Penumpang Invistico Airline")

3.4 Analisis Regresi Logistik Biner

> model_reglog <- glm(Y~X1+X2,family=binomial,data=datareglog)
> summary(model_reglog)

Call:
glm(formula = Y ~ X1 + X2, family = binomial, data = datareglog)

Coefficients:
              Estimate Std. Error z value Pr(>|z|)   
(Intercept) -1.6211300  0.5196069  -3.120  0.00181 **
X1           0.0007637  0.0002571   2.971  0.00297 **
X2           0.0131702  0.0084846   1.552  0.12060   
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

(Dispersion parameter for binomial family taken to be 1)

    Null deviance: 138.47  on 99  degrees of freedom
Residual deviance: 123.73  on 97  degrees of freedom
AIC: 129.73

Number of Fisher Scoring iterations: 5

3.5 Asumsi Nonmultikolinieritas

> vif(model_reglog)
      X1       X2 
1.001705 1.001705 

3.6 Uji Signifikansi Keseluruhan Model

> pR2(model_reglog)
fitting null model for pseudo-r2
        llh     llhNull          G2    McFadden        r2ML        r2CU 
-61.8649238 -69.2346967  14.7395458   0.1064462   0.1370474   0.1828274 
> qchisq(0.95,1)
[1] 3.841459

3.7 Uji Parsial Parameter Model

> summary(model_reglog)

Call:
glm(formula = Y ~ X1 + X2, family = binomial, data = datareglog)

Coefficients:
              Estimate Std. Error z value Pr(>|z|)   
(Intercept) -1.6211300  0.5196069  -3.120  0.00181 **
X1           0.0007637  0.0002571   2.971  0.00297 **
X2           0.0131702  0.0084846   1.552  0.12060   
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

(Dispersion parameter for binomial family taken to be 1)

    Null deviance: 138.47  on 99  degrees of freedom
Residual deviance: 123.73  on 97  degrees of freedom
AIC: 129.73

Number of Fisher Scoring iterations: 5
> Rsq <- 1-(123.73/138.47)
> Rsq
[1] 0.1064491

3.8 Odds Ratio

> beta <- (coef(model_reglog))
> beta
  (Intercept)            X1            X2 
-1.6211300331  0.0007637158  0.0131701769 
> OR_beta <- exp(beta)
> OR_beta
(Intercept)          X1          X2 
  0.1976752   1.0007640   1.0132573 
> cbind(beta,OR_beta)
                     beta   OR_beta
(Intercept) -1.6211300331 0.1976752
X1           0.0007637158 1.0007640
X2           0.0131701769 1.0132573

3.9 Klasifikasi

> yp_hat <- fitted(model_reglog)
> datareglog$yp_hat <- yp_hat
> class <- table(datareglog$Y,datareglog$yp_hat>0.5)
> class
   
    FALSE TRUE
  0    36   16
  1    22   26

3.10 Uji Kelayakan Model

> logitgof(datareglog$Y,fitted(model_reglog))

    Hosmer and Lemeshow test (binary model)

data:  datareglog$Y, fitted(model_reglog)
X-squared = 9.1811, df = 8, p-value = 0.3273

4 HASIL DAN PEMBAHASAN

4.1 Statistika Deskriptif

Berdasarkan diagram lingkaran di atas, dapat dilihat bahwa terdapat 52% penumpang yang puas dan 48% penumpang yang tidak puas. Dengan total amatan 100 penumpang, maka hasil tersebut menunjukkan bahwa terdapat 52 penumpang yang puas dan 48 penumpang yang tidak puas.

4.2 Analisis Regresi Logistik Biner

Call:
glm(formula = Y ~ X1 + X2, family = binomial, data = datareglog)

Coefficients:
              Estimate Std. Error z value Pr(>|z|)   
(Intercept) -1.6211300  0.5196069  -3.120  0.00181 **
X1           0.0007637  0.0002571   2.971  0.00297 **
X2           0.0131702  0.0084846   1.552  0.12060   
---
Signif. codes:  
0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

(Dispersion parameter for binomial family taken to be 1)

    Null deviance: 138.47  on 99  degrees of freedom
Residual deviance: 123.73  on 97  degrees of freedom
AIC: 129.73

Number of Fisher Scoring iterations: 5

Berdasarkan output di atas, model regresi logistik biner yang terbentuk:

\(\pi(x)=\frac{exp(-1.6211300+0.0007637X_1+0.0131702X_2)}{1+exp(-1.6211300+0.0007637X_1+0.0131702X_2)}\)

\(g(x)=ln(\frac{\pi(x)}{1-\pi(x)})=-1.6211300+0.0007637X_1+0.0131702X_2\)

4.3 Asumsi Nonmultikolinieritas

      X1       X2 
1.001705 1.001705 

Output di atas didapat dengan menggunakan nilai variance inflation factor (VIF) dimana jika nilai VIF > 10 maka dianggap sebagai indikasi adanya multikolinieritas. Berdasarkan output di atas, didapat nilai VIF yang sama bagi X1 dan X2 yaitu 1.001705 yang berarti nilai VIF < 10 sehingga dapat disimpulkan bahwa tidak terdapat indikasi adanya multikolinieritas.

4.4 Uji Signifikansi Keseluruhan Model

Hipotesis:

  • H0 : \(\beta_{1}\)=\(\beta_{2}\)=0
  • H1 : Setidaknya terdapat satu \(\beta_{j}\) tidak sama dengan 0, j = 1, 2
fitting null model for pseudo-r2
        llh     llhNull          G2    McFadden        r2ML        r2CU 
-61.8649238 -69.2346967  14.7395458   0.1064462   0.1370474   0.1828274 
> qchisq(0.95,2)
[1] 3.841459

Dari output di atas, diperoleh G2 sebesar 14.7395458 dengan nilai chisquare tabel sebesar 3.841459 dimana nilai G2 lebih besar dari nilai chisquare sehingga didapat keputusan tolak H0. Maka dapat disimpulkan bahwa model signifikan atau setidaknya terdapat satu variabel yang berpengaruh terhadap kejadian penumpang tidak puas.

4.5 Uji Parsial Parameter Model

Hipotesis:

  • H0 : \(\beta_{1}\)=\(\beta_{2}\)=0
  • H1 : Setidaknya terdapat satu \(\beta_{j}\) tidak sama dengan 0, j = 1, 2
Call:
glm(formula = Y ~ X1 + X2, family = binomial, data = datareglog)

Coefficients:
              Estimate Std. Error z value Pr(>|z|)   
(Intercept) -1.6211300  0.5196069  -3.120  0.00181 **
X1           0.0007637  0.0002571   2.971  0.00297 **
X2           0.0131702  0.0084846   1.552  0.12060   
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

(Dispersion parameter for binomial family taken to be 1)

    Null deviance: 138.47  on 99  degrees of freedom
Residual deviance: 123.73  on 97  degrees of freedom
AIC: 129.73

Number of Fisher Scoring iterations: 5

Berdasarkan output di atas, dapat dilihat bahwa variabel X1 (Jarak Tempuh Penerbangan) memiliki p-value sebesar 0.00297 yang lebih kecil dari \(\alpha\) (0.05) sehingga keputusan tolak H0 yang berarti jarak tempuh penerbangan berpengaruh signifikan terhadap kejadian penumpang yang tidak puas. Sedangkan untuk variabel X2 (Delay Keberangkatan Penerbangan) memiliki p-value sebesar 0.12060 yang lebih besar dari \(\alpha\) (0.05) sehingga keputusan terima H0 yang berarti delay keberangkatan penerbangan tidak berpengaruh signifikan terhadap kejadian penumpang yang tidak puas.

4.6 Odds Ratio

                     beta   OR_beta
(Intercept) -1.6211300331 0.1976752
X1           0.0007637158 1.0007640
X2           0.0131701769 1.0132573

Berdasarkan output di atas, beberapa hal yang dapat disimpulkan dari nilai odds ratio adalah:

  • Jarak Tempuh Penerbangan (X1)

    Apabila jarak tempuh penerbangan bertambah 1 km maka kecenderungan penumpang tidak puas meningkat 1.0007640 kali lipat yang artinya apabila jarak tempuh semakin jauh maka potensi penumpang tidak puas akan meningkat juga.

  • Delay Keberangkatan Penerbangan (X2)

    Apabila delay keberangkatan penerbangan bertambah 1 menit maka kecenderungan penumpang tidak puas meningkat 1.0132573 kali lipat yang berarti apabila delay keberangkatan penerbangan semakin lama maka penumpang tidak puas akan meningkat juga.

4.7 Klasifikasi

    FALSE TRUE
  0    36   16
  1    22   26

Berdasarkan output di atas, didapat dari 52 amatan dengan Y=0, hanya 16 amatan yang diklasifikasikan dengan benar. Kemudian, dari 48 amatan dengan Y=1, terdapat 26 amatan yang diklasifikasikan dengan benar, sehingga didapat tingkat akurasi model sebesar:

Tingkat Akurasi = \(\frac{26+16}{100}(100\%)\) = 42%

4.8 Uji Kelayakan Model

Hipotesis:

  • H0 : Model Layak
  • H1 : Model Tidak Layak

Dari perhitungan di atas, didapat output sebagai berikut:

    Hosmer and Lemeshow test (binary model)

data:  datareglog$Y, fitted(model_reglog)
X-squared = 9.1811, df = 8, p-value = 0.3273

Berdasarkan output di atas, p-value yang dihasilkan adalah 0.3273 yang lebih besar dari \(\alpha\) (0.05) sehingga didapat keputusan terima H0 yang berarti model regresi layak digunakan.

5 KESIMPULAN

  • Analisis Regresi Logistik Biner dan Uji Kelayakan Model

    Berdasarkan data kepuasan penumpang penerbangan Invistico Airline, didapat model regresi logistik biner yaitu:

    \(\pi(x)=\frac{exp(-1.6211300+0.0007637X_1+0.0131702X_2)}{1+exp(-1.6211300+0.0007637X_1+0.0131702X_2)}\)

    \(g(x)=ln(\frac{\pi(x)}{1-\pi(x)})=-1.6211300+0.0007637X_1+0.0131702X_2\)

    dimana berdasarkan output dari Hosmer and Lemeshow test diperoleh p-value sebesar 0.3273 yang lebih besar dari \(\alpha\) (0.05) sehingga didapat keputusan terima H0 yang berarti model regresi yang terbentuk layak untuk digunakan.

  • Asumsi Nonmultikolinieritas

    Berdasarkan uji asumsi nonmultikolinieritas untuk model tersebut didapat bahwa tidak terdapat indikasi adanya multikolinieritas pada variabel X1 dan X2.

  • Uji Signifikansi Keseluruhan Model

    Berdasarkan uji signifikansi keseluruhan model dengan memanfaatkan pseudo-R2, didapat hasil bahwa model signifikan secara keseluruhan atau setidaknya terdapat satu variabel yang berpengaruh terhadap kejadian penumpang tidak puas.

  • Uji Parsial Parameter Model

    Berdasarkan uji parsial parameter model, didapat bahwa variabel X1 yaitu jarak tempuh penerbangan (dalam km) berpengaruh signifikan terhadap kejadian penumpang tidak puas, sedangkan variabel X2 yaitu delay keberangkatan penerbangan (dalam menit) tidak berpengaruh signifikan terhadap kejadian penumpang tidak puas.

  • Odds Ratio

    Berdasarkan odds ratio, diperoleh hasil bahwa apabila jarak tempuh (X1) semakin jauh maka potensi penumpang tidak puas akan meningkat dan apabila delay keberangkatan penerbangan (X2) semakin lama maka penumpang tidak puas akan meningkat juga.

  • Klasifikasi

    Berdasarkan klasifikasinya, didapat hasil hanya 16 amatan (Y=0) yang diklasifikasikan dengan benar dan terdapat 26 amatan (Y=1) yang diklasifikasikan dengan benar, sehingga didapat tingkat akurasi model sebesar 42%.

6 DAFTAR PUSTAKA

Afifah, Devi Nur. (2020). Penerapan Metode Regresi Logistik Biner Pada Kesejahteraan Rumah Tangga Di Kabupaten Mojokerto. Malang: Fakultas Sains dan Teknologi Universitas Islam Negeri Maulana Malik Ibrahim.

Basuki, Agus Tri. (2017). Regresi Logistik. Yogyakarta: Universitas Muhammadiyah.

Sholikhah, Amirotun. (2016). Statistik Deskriptif Dalam Penelitian Kualitatif. Purwokerto: Fakultas Dakwah IAIN.

Widjaja, Ezra Laurentia. (2017). Analisa Pengaruh Kualitas Layanan Terhadap Kepuasan Penumpang Maskapai Penerbangan Batik Air. Surabaya: Fakultas Ekonomi Universitas Kristen Petra.

Sumber data: https://www.kaggle.com/datasets/sjleshrac/airlines-customer-satisfaction