PENDAHULUAN

Latar Belakang

Penyakit cardiovaskular merupakan salah satu penyakit paling mematikan didunia.Penyakit ini menjadi penyakit penyebab kematian nomor 1 didunia yang telah mengambil setidaknya 17,9 juta jiwa setiap tahunnya. Kejadian yang umum terjadi akibat penyakit cardiovaskular adalah gagal jantung. Penyakit cardiovaskular dapat dicegah dengan cara menghindari atau memperbaiki hal hal yang bisa menjadi penyebab terjadinya penyakit ini, seperti merokok, kurangnya aktivitas fisik, dan lain sebagainya. Akan dilakukan suatu pemodelan untuk memprediksi kemungkinan pasien meninggal ketika penanganan gagal jantung. Dataset diperoleh dari kaggle dengan link sebagai berikut :https://www.kaggle.com/datasets/andrewmvd/heart-failure-clinical-data

TINJAUAN PUSTAKA

  1. Regresi Logistik Regresi logistik merupakan metode statistika yang digunakan untuk mendeskripsikan hubungan antara variabel terikat dengan variabel bebas. Pada regresi logistik variabel terikat atau Y memiliki skala data minimal ordinal. Sedangkan, peubah bebas atau X boleh memiliki skala data kategorik maupun kontinu. Terdapat 3 jenis regresi logistik yaitu regresi logistik biner, multinomial, dan ordinal. Pada model regresi logistik biner, variabel responnya memiliki 2 kategori yang bernilai 0 dan 1, sehingga berdistribusi bernaulli.

\[ \pi(x) =\frac {exp(\alpha + \beta_1 X)} {1+exp(\alpha + \beta_1 X)} \] - Link function Logit : \[ g(x) =ln [\frac{\pi(x)} {1-\pi(x)}] \] 2. Asumsi Nonmultikolinearitas

Asumsi Nonmultikolinearitas dilakukann untuk melihat adanya korelasi. Pengujian menggunakan VIF atau TOL. Asumsi dapat terpenuhi jika nilai VIF<10 \[ VIF_j = \frac {1}{1-R_j^2} \] 3. Odds Ratio \[ \psi = exp(\beta_1) \] Bila nilai odd ratio adalah 1 maka tidak terdapat hubungan. Jika kurang dari 1, maka kedua variabel tersebut memiliki hubungan negatif begitupun sebaliknya.

  1. Ketepatan Model

Uji ketepatan model menggunakan statistik uji G atau Likelihood Ratio Test : \[ G = -2ln [\frac {L_0}{L_p}] \] 5. Uji Parsial Uji parsial digunakan untuk memeriksa pengaruh setiap variabel X terhadap Y. Pengujian menggunakan Statistik uji Wald

\[ W = \frac {\beta_i}{SE(\beta_i)} \] # SOURCE CODE

1.Library

library(readr)
## Warning: package 'readr' was built under R version 4.2.3
library(generalhoslem)
## Warning: package 'generalhoslem' was built under R version 4.2.3
## Loading required package: reshape
## Warning: package 'reshape' was built under R version 4.2.3
## Loading required package: MASS
library(pscl)
## Warning: package 'pscl' was built under R version 4.2.3
## Classes and Methods for R developed in the
## Political Science Computational Laboratory
## Department of Political Science
## Stanford University
## Simon Jackman
## hurdle and zeroinfl functions by Achim Zeileis

2.Data

#mengimpor data
data <-read.csv("C:/Users/user/Downloads/DATAREG LOGISTIK KOMPSTAT/DATA 1.csv")
str(data)
## 'data.frame':    299 obs. of  13 variables:
##  $ age                     : num  75 55 65 50 65 90 75 60 65 80 ...
##  $ anaemia                 : int  0 0 0 1 1 1 1 1 0 1 ...
##  $ creatinine_phosphokinase: int  582 7861 146 111 160 47 246 315 157 123 ...
##  $ diabetes                : int  0 0 0 0 1 0 0 1 0 0 ...
##  $ ejection_fraction       : int  20 38 20 20 20 40 15 60 65 35 ...
##  $ high_blood_pressure     : int  1 0 0 0 0 1 0 0 0 1 ...
##  $ platelets               : num  265000 263358 162000 210000 327000 ...
##  $ serum_creatinine        : num  1.9 1.1 1.3 1.9 2.7 2.1 1.2 1.1 1.5 9.4 ...
##  $ serum_sodium            : int  130 136 129 137 116 132 137 131 138 133 ...
##  $ sex                     : int  1 1 1 1 0 1 1 1 0 1 ...
##  $ smoking                 : int  0 0 1 0 0 1 0 1 0 1 ...
##  $ time                    : int  4 6 7 7 8 8 10 10 10 10 ...
##  $ DEATH_EVENT             : int  1 1 1 1 1 1 1 1 1 1 ...
head(data)
##   age anaemia creatinine_phosphokinase diabetes ejection_fraction
## 1  75       0                      582        0                20
## 2  55       0                     7861        0                38
## 3  65       0                      146        0                20
## 4  50       1                      111        0                20
## 5  65       1                      160        1                20
## 6  90       1                       47        0                40
##   high_blood_pressure platelets serum_creatinine serum_sodium sex smoking time
## 1                   1    265000              1.9          130   1       0    4
## 2                   0    263358              1.1          136   1       0    6
## 3                   0    162000              1.3          129   1       1    7
## 4                   0    210000              1.9          137   1       0    7
## 5                   0    327000              2.7          116   0       0    8
## 6                   1    204000              2.1          132   1       1    8
##   DEATH_EVENT
## 1           1
## 2           1
## 3           1
## 4           1
## 5           1
## 6           1
#mendeskripsikan variabel
Y <- as.factor(data$DEATH_EVENT)
X1 <- data$serum_creatinine
X2 <- data$age
X3 <- as.factor(data$high_blood_pressure)

#membuat dataframe
datalog<-data.frame(Y,X1,X2,X3)
str(datalog)
## 'data.frame':    299 obs. of  4 variables:
##  $ Y : Factor w/ 2 levels "0","1": 2 2 2 2 2 2 2 2 2 2 ...
##  $ X1: num  1.9 1.1 1.3 1.9 2.7 2.1 1.2 1.1 1.5 9.4 ...
##  $ X2: num  75 55 65 50 65 90 75 60 65 80 ...
##  $ X3: Factor w/ 2 levels "0","1": 2 1 1 1 1 2 1 1 1 2 ...
head(datalog)
##   Y  X1 X2 X3
## 1 1 1.9 75  1
## 2 1 1.1 55  0
## 3 1 1.3 65  0
## 4 1 1.9 50  0
## 5 1 2.7 65  0
## 6 1 2.1 90  1

3.Asumsi Nonmultikolinearitas

#untuk X1
reg1 <- lm(X1~X2+X3, data=datalog)
summary(reg1)
## 
## Call:
## lm(formula = X1 ~ X2 + X3, data = datalog)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -0.9643 -0.4538 -0.2674  0.0809  7.7657 
## 
## Coefficients:
##              Estimate Std. Error t value Pr(>|t|)   
## (Intercept)  0.556963   0.309649   1.799  0.07309 . 
## X2           0.014007   0.005012   2.795  0.00553 **
## X31         -0.043183   0.124673  -0.346  0.72931   
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 1.025 on 296 degrees of freedom
## Multiple R-squared:  0.02574,    Adjusted R-squared:  0.01915 
## F-statistic: 3.909 on 2 and 296 DF,  p-value: 0.0211
R2_1 <- 1/(1-0.02574)
R2_1
## [1] 1.02642

nilai VIF untuk X1 bernilai 1,02642. Karena nilai VIF nya kurang dari 10 maka asumsi nonmultikolinearitas terpenuhi.

#Untuk X2
reg2 <- lm(X2~X1+X3, data =datalog)
summary(reg2)
## 
## Call:
## lm(formula = X2 ~ X1 + X3, data = datalog)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -22.429  -9.105  -0.574   7.820  33.875 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept)  57.4533     1.2457  46.121  < 2e-16 ***
## X1            1.8357     0.6568   2.795  0.00553 ** 
## X31           2.3404     1.4211   1.647  0.10063    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 11.73 on 296 degrees of freedom
## Multiple R-squared:  0.03419,    Adjusted R-squared:  0.02766 
## F-statistic: 5.239 on 2 and 296 DF,  p-value: 0.005807
R2_2 <- 1/(1-0.03419)
R2_2
## [1] 1.0354

nilai VIF untuk X1 bernilai 1,0354. Karena nilai VIF nya kurang dari 10 maka asumsi nonmultikolinearitas terpenuhi.

#Untuk X3
reglog3 <- glm(X3~X1+X2, family = binomial, data =datalog)
summary(reglog3)
## 
## Call:
## glm(formula = X3 ~ X1 + X2, family = binomial, data = datalog)
## 
## Deviance Residuals: 
##     Min       1Q   Median       3Q      Max  
## -1.1499  -0.9385  -0.8662   1.3771   1.6450  
## 
## Coefficients:
##             Estimate Std. Error z value Pr(>|z|)  
## (Intercept) -1.59352    0.64280  -2.479   0.0132 *
## X1          -0.04186    0.12206  -0.343   0.7316  
## X2           0.01697    0.01034   1.640   0.1009  
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## (Dispersion parameter for binomial family taken to be 1)
## 
##     Null deviance: 387.60  on 298  degrees of freedom
## Residual deviance: 384.89  on 296  degrees of freedom
## AIC: 390.89
## 
## Number of Fisher Scoring iterations: 4
pR2(reglog3)
## fitting null model for pseudo-r2
##           llh       llhNull            G2      McFadden          r2ML 
## -1.924462e+02 -1.938023e+02  2.712238e+00  6.997434e-03  9.030011e-03 
##          r2CU 
##  1.243002e-02
R2_3 <- 1/(1-0.00903)
R2_3
## [1] 1.009112

nilai VIF untuk X1 bernilai 1,009112. Karena nilai VIF nya kurang dari 10 maka asumsi nonmultikolinearitas terpenuhi.

4.Regresi Logistik

reg_log<-glm(Y~X1+X2+X3,family=binomial,data=datalog)
summary(reg_log)
## 
## Call:
## glm(formula = Y ~ X1 + X2 + X3, family = binomial, data = datalog)
## 
## Deviance Residuals: 
##     Min       1Q   Median       3Q      Max  
## -2.2895  -0.8259  -0.6425   1.1018   2.0653  
## 
## Coefficients:
##             Estimate Std. Error z value Pr(>|z|)    
## (Intercept) -4.39092    0.76792  -5.718 1.08e-08 ***
## X1           0.74649    0.19507   3.827 0.000130 ***
## X2           0.03971    0.01160   3.425 0.000615 ***
## X31          0.38430    0.27868   1.379 0.167893    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## (Dispersion parameter for binomial family taken to be 1)
## 
##     Null deviance: 375.35  on 298  degrees of freedom
## Residual deviance: 332.23  on 295  degrees of freedom
## AIC: 340.23
## 
## Number of Fisher Scoring iterations: 5

Dari output di atas, model regresi logistik dapat ditulis sebagai berikut :

\[ \pi(x) =\frac {exp(-4,39092 + 0,74649 X_1 + 0,03971 X_2 + 0,38430 X_3)} {1+exp(-4,39092 + 0,74649 X_1 + 0,03971 X_2 + 0,38430 X_3)} \] \[ g(x) = [\frac{\frac {exp(-4,39092 + 0,74649 X_1 + 0,03971 X_2 + 0,38430 X_3)} {1+exp(-4,39092 + 0,74649 X_1 + 0,03971 X_2 + 0,38430 X_3)}} {1-(\frac {exp(-4,39092 + 0,74649 X_1 + 0,03971 X_2 + 0,38430 X_3)} {1+exp(-4,39092 + 0,74649 X_1 + 0,03971 X_2 + 0,38430 X_3)})}] \]

\[ g(x) = -4,39092 + 0,74649 X_1 + 0,03971 X_2 + 0,38430 X_3 \] Dari summary regresi logistik juga didapatkan hasil uji parsial. Variabel yang secara parsial berpengaruh secara signifikan terhadap Y adalah variabel X1 dan X2.

5.R-Square

Rsq<-1-(332.23/375.35)
Rsq
## [1] 0.1148794

Nilai R-square diperoleh yaitu 0,11487 atau 11,487 %. Maka variabel X1,X2, dan X3 dapat menjelaskan potensi pasien meninggal selama tindak lanjut adalah 11,487%.

6.Odds Ratio

beta<-(coef(reg_log))
beta
## (Intercept)          X1          X2         X31 
## -4.39091863  0.74649135  0.03971196  0.38430397
OR_beta<-exp(beta)
OR_beta
## (Intercept)          X1          X2         X31 
##  0.01238934  2.10958521  1.04051102  1.46859178
cbind(beta,OR_beta)
##                    beta    OR_beta
## (Intercept) -4.39091863 0.01238934
## X1           0.74649135 2.10958521
## X2           0.03971196 1.04051102
## X31          0.38430397 1.46859178
  1. Membentuk Klasifikasi
yphat<-fitted(reg_log)
datalog$yphat <- yphat
datalog
##     Y   X1     X2 X3      yphat
## 1   1 1.90 75.000  1 0.59631059
## 2   1 1.10 55.000  0 0.20010786
## 3   1 1.30 65.000  0 0.30170277
## 4   1 1.90 50.000  0 0.27150759
## 5   1 2.70 65.000  0 0.55129029
## 6   1 2.10 90.000  1 0.75677766
## 7   1 1.20 75.000  0 0.37361670
## 8   1 1.10 60.000  0 0.23378506
## 9   1 1.50 65.000  0 0.33405437
## 10  1 9.40 80.000  1 0.99794897
## 11  1 4.00 75.000  1 0.87628899
## 12  1 0.90 62.000  1 0.29470715
## 13  1 1.10 45.000  0 0.14396513
## 14  1 1.10 50.000  1 0.23149724
## 15  0 1.00 49.000  1 0.21177865
## 16  1 1.30 82.000  0 0.45906701
## 17  1 0.90 87.000  0 0.43434727
## 18  1 0.80 45.000  0 0.11850258
## 19  1 1.00 70.000  1 0.38218455
## 20  1 1.90 48.000  0 0.25608621
## 21  0 1.30 65.000  1 0.38819672
## 22  1 1.60 65.000  1 0.44251749
## 23  1 0.90 68.000  1 0.34652276
## 24  0 0.80 53.000  0 0.15590849
## 25  1 1.83 75.000  1 0.58367095
## 26  1 1.90 80.000  0 0.55091582
## 27  1 1.00 95.000  1 0.62539535
## 28  1 1.30 70.000  1 0.43626393
## 29  1 5.80 58.000  0 0.90396039
## 30  1 1.20 82.000  0 0.44059482
## 31  1 1.83 94.000  1 0.74883126
## 32  1 3.00 85.000  0 0.77277934
## 33  1 1.00 50.000  1 0.21848357
## 34  0 1.20 50.000  0 0.18100830
## 35  1 1.00 65.000  1 0.33651892
## 36  1 3.50 69.000  0 0.72350731
## 37  1 1.00 90.000  0 0.48241951
## 38  1 1.00 82.000  1 0.49906434
## 39  0 2.30 60.000  0 0.42769274
## 40  1 3.00 60.000  0 0.55756190
## 41  1 1.83 70.000  1 0.53476921
## 42  1 1.20 50.000  1 0.24504300
## 43  1 1.20 70.000  1 0.41800027
## 44  0 1.00 72.000  1 0.40110519
## 45  1 1.10 60.000  0 0.23378506
## 46  1 1.90 50.000  0 0.27150759
## 47  1 0.90 51.000  1 0.21257680
## 48  1 0.60 60.000  1 0.23577176
## 49  1 4.40 80.000  1 0.92091933
## 50  1 1.00 57.000  0 0.20087323
## 51  1 1.00 68.000  1 0.36361454
## 52  1 1.40 53.000  1 0.29800983
## 53  1 6.80 60.000  0 0.95555076
## 54  1 1.00 70.000  1 0.38218455
## 55  1 2.20 60.000  0 0.40952723
## 56  1 2.00 95.000  0 0.70572277
## 57  0 2.70 70.000  0 0.59975519
## 58  0 0.60 60.000  0 0.17360270
## 59  1 1.10 49.000  1 0.22450768
## 60  1 1.30 72.000  1 0.45588629
## 61  1 1.00 45.000  1 0.18647414
## 62  1 2.30 50.000  1 0.42455879
## 63  0 1.10 55.000  0 0.20010786
## 64  1 1.00 45.000  0 0.13500766
## 65  0 1.18 45.000  0 0.15148249
## 66  1 2.90 60.000  0 0.53907611
## 67  1 1.30 42.000  0 0.14772238
## 68  1 1.00 72.000  0 0.31320752
## 69  1 1.20 70.000  0 0.32843059
## 70  1 1.83 65.000  0 0.39089252
## 71  0 0.80 41.000  0 0.10288841
## 72  0 0.90 58.000  0 0.19532356
## 73  1 1.00 85.000  0 0.43317453
## 74  0 1.30 65.000  0 0.30170277
## 75  1 1.20 69.000  0 0.31973197
## 76  1 0.70 60.000  0 0.18457446
## 77  0 0.80 70.000  1 0.34760477
## 78  0 1.20 42.000  0 0.13856898
## 79  0 0.60 75.000  1 0.35885830
## 80  0 0.90 55.000  1 0.24037683
## 81  0 1.70 70.000  0 0.41531252
## 82  0 1.18 67.000  0 0.29956764
## 83  1 2.50 60.000  0 0.46456632
## 84  0 1.80 79.000  1 0.61640444
## 85  1 1.00 59.000  1 0.28554554
## 86  0 0.70 51.000  0 0.13668923
## 87  0 1.10 55.000  1 0.26868268
## 88  0 0.80 65.000  1 0.30403761
## 89  0 0.70 44.000  1 0.14972691
## 90  0 1.10 57.000  1 0.28457244
## 91  0 0.80 70.000  0 0.26621957
## 92  0 1.00 60.000  0 0.22067971
## 93  0 1.18 42.000  0 0.13679644
## 94  1 1.70 60.000  0 0.32318659
## 95  0 0.70 58.000  1 0.23491250
## 96  0 1.00 58.000  1 0.27751340
## 97  0 1.30 63.000  1 0.36950931
## 98  0 1.10 70.000  0 0.31218134
## 99  0 1.20 60.000  1 0.32561016
## 100 0 1.10 63.000  0 0.25579795
## 101 0 1.10 65.000  0 0.27120830
## 102 0 1.18 75.000  1 0.46322704
## 103 0 1.10 80.000  0 0.40303829
## 104 0 1.00 42.000  0 0.12168976
## 105 0 2.30 60.000  1 0.52324149
## 106 1 1.70 72.000  1 0.53038295
## 107 0 1.30 55.000  0 0.22507682
## 108 0 0.90 45.000  0 0.12652515
## 109 0 1.10 63.000  0 0.25579795
## 110 0 1.30 45.000  0 0.16335943
## 111 1 1.20 85.000  0 0.47013248
## 112 0 1.20 55.000  0 0.21232436
## 113 0 1.60 50.000  0 0.22953574
## 114 1 1.30 70.000  0 0.34510127
## 115 0 1.20 60.000  1 0.32561016
## 116 0 1.00 58.000  0 0.20732369
## 117 0 0.70 60.000  1 0.24948644
## 118 0 3.20 85.000  0 0.79792412
## 119 0 0.90 65.000  1 0.32006021
## 120 1 1.83 86.000  0 0.59637635
## 121 0 1.50 60.000  1 0.37656353
## 122 0 1.00 66.000  1 0.34544233
## 123 0 0.75 60.000  0 0.19025832
## 124 0 0.90 60.000  1 0.27847175
## 125 1 3.70 60.000  0 0.68000982
## 126 0 1.30 43.000  0 0.15279240
## 127 1 2.10 46.000  1 0.35155006
## 128 0 0.80 58.000  0 0.18385691
## 129 0 0.70 61.000  1 0.25699594
## 130 0 3.40 53.000  0 0.56264060
## 131 0 0.70 53.000  1 0.20111552
## 132 0 6.10 60.000  0 0.92726361
## 133 0 1.18 46.000  1 0.21433256
## 134 0 1.30 63.000  1 0.36950931
## 135 0 1.18 81.000  0 0.42717411
## 136 0 1.18 75.000  0 0.37012936
## 137 0 0.90 65.000  0 0.24272469
## 138 0 2.10 68.000  0 0.46932020
## 139 0 1.00 62.000  0 0.23464145
## 140 0 0.80 50.000  1 0.19406286
## 141 1 1.10 80.000  0 0.40303829
## 142 0 0.90 46.000  0 0.13097945
## 143 0 0.90 50.000  0 0.15014319
## 144 0 0.90 61.000  1 0.28652064
## 145 1 1.70 72.000  1 0.53038295
## 146 0 0.70 50.000  0 0.13207026
## 147 0 0.70 52.000  0 0.14144342
## 148 0 1.00 64.000  0 0.24920405
## 149 1 1.83 75.000  0 0.48839146
## 150 0 0.90 60.000  1 0.27847175
## 151 1 2.50 72.000  1 0.67235919
## 152 0 0.90 62.000  1 0.29470715
## 153 0 0.90 50.000  1 0.20600537
## 154 0 1.18 50.000  0 0.17880557
## 155 0 0.80 65.000  1 0.30403761
## 156 0 1.70 60.000  0 0.32318659
## 157 0 1.40 52.000  0 0.21741257
## 158 0 1.00 50.000  0 0.15991921
## 159 0 1.30 85.000  0 0.48876106
## 160 0 1.10 59.000  1 0.30101513
## 161 0 1.20 66.000  1 0.37993227
## 162 0 0.80 45.000  0 0.11850258
## 163 0 0.90 63.000  0 0.22842552
## 164 1 0.90 50.000  0 0.15014319
## 165 1 1.10 45.000  0 0.14396513
## 166 1 1.30 80.000  1 0.53513720
## 167 0 0.70 53.000  0 0.14633494
## 168 1 2.40 59.000  0 0.43626515
## 169 0 1.00 65.000  0 0.25670796
## 170 0 0.80 70.000  1 0.34760477
## 171 0 1.50 51.000  0 0.22341559
## 172 0 0.90 52.000  0 0.16056172
## 173 0 1.10 70.000  1 0.39995874
## 174 0 0.80 50.000  0 0.14086458
## 175 0 0.90 65.000  1 0.32006021
## 176 0 1.00 60.000  0 0.22067971
## 177 0 1.00 69.000  0 0.28816722
## 178 0 1.00 49.000  0 0.15465588
## 179 0 1.20 63.000  0 0.27026558
## 180 0 0.70 55.000  0 0.15653789
## 181 0 0.90 40.000  0 0.10615823
## 182 1 1.00 59.000  0 0.21392585
## 183 1 1.20 65.000  0 0.28621232
## 184 1 2.50 75.000  1 0.69804607
## 185 1 1.20 58.000  0 0.23293084
## 186 1 1.50 60.667  0 0.29692663
## 187 1 0.60 50.000  0 0.12374590
## 188 1 2.10 60.000  0 0.39160534
## 189 0 1.00 60.667  1 0.29924035
## 190 0 0.90 40.000  1 0.14851523
## 191 0 2.10 80.000  0 0.58750725
## 192 0 1.50 64.000  0 0.32527895
## 193 0 0.70 50.000  0 0.13207026
## 194 0 1.18 73.000  0 0.35181155
## 195 1 1.60 45.000  1 0.26401762
## 196 1 1.80 77.000  0 0.50264664
## 197 0 1.18 45.000  1 0.20772118
## 198 0 0.80 65.000  0 0.22926816
## 199 0 1.00 50.000  1 0.21848357
## 200 0 1.80 60.000  0 0.33972574
## 201 0 0.70 63.000  0 0.20318247
## 202 0 1.00 45.000  1 0.18647414
## 203 0 0.90 70.000  1 0.36472014
## 204 0 3.50 60.000  1 0.72885530
## 205 0 0.70 78.000  0 0.31629702
## 206 0 1.00 50.000  0 0.15991921
## 207 0 0.80 40.000  0 0.09928028
## 208 0 0.90 85.000  0 0.41494500
## 209 0 1.00 60.000  0 0.22067971
## 210 0 0.80 49.000  1 0.18792716
## 211 0 1.00 70.000  1 0.38218455
## 212 0 0.80 50.000  1 0.19406286
## 213 0 1.40 78.000  0 0.43824248
## 214 1 1.60 48.000  1 0.28780789
## 215 0 0.80 65.000  1 0.30403761
## 216 0 1.30 73.000  1 0.46575299
## 217 0 0.90 70.000  1 0.36472014
## 218 1 9.00 54.000  1 0.99228048
## 219 0 1.10 68.000  0 0.29538647
## 220 0 0.70 55.000  1 0.21417967
## 221 1 1.83 73.000  0 0.46857487
## 222 0 1.10 65.000  0 0.27120830
## 223 0 1.10 42.000  0 0.12989631
## 224 0 0.80 47.000  0 0.12705378
## 225 0 1.00 58.000  0 0.20732369
## 226 0 1.40 75.000  0 0.40916125
## 227 0 1.30 58.000  0 0.24653358
## 228 0 1.00 55.000  1 0.25427026
## 229 0 5.00 65.000  0 0.87245207
## 230 0 1.20 72.000  0 0.34618119
## 231 1 1.70 60.000  0 0.32318659
## 232 0 1.10 70.000  0 0.31218134
## 233 0 0.90 40.000  0 0.10615823
## 234 0 1.40 53.000  0 0.22424511
## 235 0 1.10 53.000  0 0.18769702
## 236 0 1.10 77.000  1 0.46812994
## 237 0 1.10 75.000  1 0.44841490
## 238 0 1.20 70.000  0 0.32843059
## 239 0 1.00 65.000  0 0.25670796
## 240 0 1.18 55.000  0 0.20983818
## 241 0 1.30 70.000  1 0.43626393
## 242 0 1.30 65.000  0 0.30170277
## 243 0 1.10 40.000  0 0.12118035
## 244 0 0.90 73.000  1 0.39274234
## 245 0 1.80 54.000  0 0.28847782
## 246 0 1.40 61.000  0 0.28426538
## 247 1 1.10 55.000  0 0.20010786
## 248 0 2.40 64.000  0 0.48556052
## 249 0 1.00 40.000  0 0.11345266
## 250 0 1.20 53.000  0 0.19934468
## 251 0 0.50 50.000  1 0.16141043
## 252 0 0.80 55.000  0 0.16664863
## 253 0 1.00 50.000  1 0.21848357
## 254 0 1.20 70.000  1 0.41800027
## 255 0 1.00 53.000  1 0.23950605
## 256 0 1.00 52.000  1 0.23234779
## 257 0 1.70 65.000  0 0.36804663
## 258 0 1.00 58.000  1 0.27751340
## 259 0 0.80 45.000  0 0.11850258
## 260 0 0.70 53.000  0 0.14633494
## 261 0 1.00 55.000  0 0.18842611
## 262 0 0.70 62.000  0 0.19682886
## 263 1 1.40 65.000  0 0.31765849
## 264 0 1.00 68.000  0 0.28009024
## 265 0 1.20 61.000  0 0.25489005
## 266 0 0.90 50.000  0 0.15014319
## 267 1 1.83 55.000  0 0.30139123
## 268 0 1.70 56.000  0 0.28945887
## 269 0 0.90 45.000  0 0.12652515
## 270 0 1.00 40.000  0 0.11345266
## 271 0 1.60 44.000  1 0.25637373
## 272 0 0.90 51.000  0 0.15528115
## 273 0 1.20 67.000  0 0.30270966
## 274 0 0.70 42.000  0 0.09970808
## 275 0 1.00 60.000  0 0.22067971
## 276 0 0.80 45.000  1 0.16487643
## 277 0 1.10 70.000  0 0.31218134
## 278 0 1.10 70.000  0 0.31218134
## 279 0 0.70 50.000  0 0.13207026
## 280 0 1.30 55.000  0 0.22507682
## 281 0 1.00 70.000  0 0.29638123
## 282 0 2.70 70.000  0 0.59975519
## 283 0 3.80 42.000  0 0.52838215
## 284 0 1.10 65.000  0 0.27120830
## 285 0 0.80 50.000  0 0.14086458
## 286 0 1.20 55.000  0 0.21232436
## 287 0 1.70 60.000  0 0.32318659
## 288 0 1.00 45.000  0 0.13500766
## 289 0 1.10 65.000  0 0.27120830
## 290 0 0.90 90.000  0 0.46381336
## 291 0 0.80 45.000  0 0.11850258
## 292 0 1.40 60.000  0 0.27625532
## 293 0 1.00 52.000  0 0.17087971
## 294 0 0.90 63.000  0 0.22842552
## 295 0 1.10 62.000  1 0.32665952
## 296 0 1.20 55.000  0 0.21232436
## 297 0 0.80 45.000  0 0.11850258
## 298 0 1.40 45.000  0 0.17381997
## 299 0 1.60 50.000  0 0.22953574
pR2(reg_log)
## fitting null model for pseudo-r2
##          llh      llhNull           G2     McFadden         r2ML         r2CU 
## -166.1150054 -187.6743883   43.1187658    0.1148765    0.1342940    0.1878177
class<-table(datalog$Y,datalog$yphat>0.5)
class
##    
##     FALSE TRUE
##   0   192   11
##   1    69   27

Dari output tersebut di dapatkan hasil berikut : - Dari 203 amatan dengan Y=0, hanya 11 yang diklasifikasikan dengan benar. - Dari 96 amatan dengan Y=1, 27 diantaranya diklasifikasikan dengan benar. -Tingkat akurasi model yaitu [(11+27)/100)*100%] = 38%

  1. Memeriksa Ketepatan Model
logitgof(datalog$Y,fitted(reg_log))
## 
##  Hosmer and Lemeshow test (binary model)
## 
## data:  datalog$Y, fitted(reg_log)
## X-squared = 4.2897, df = 8, p-value = 0.8301

P-value yang diperoleh yaitu 0,8301. Karena p-value lebih besar dari alpha maka dapat disimpulkan bahwa model sudah tepat.

Kesimpulan

Berdasarkan output di atas dapat disimpulkan bahwa Tingkat keratin dalam darah, umur, dan hipertensi dapat mempengaruhi potensi pasien meninggal selama tindak lanjut. Secara parsial, Tingkat keratin dan umur berpengaruh secara signifikan terhadap potensi pasien meninggal. Ketiga variabel independen (X1,X2,X3) dapat menjelaskan 11,487% potensi pasien meninggal. Berdasarkan Uji ketepatan model, model logistik sudah tepat.

Daftar Pustaka

Davide Chicco, Giuseppe Jurman: Machine learning can predict survival of patients with heart failure from serum creatinine and ejection fraction alone. BMC Medical Informatics and Decision Making 20, 16 (2020).(https://www.kaggle.com/datasets/andrewmvd/heart-failure-clinical-data) Tampil, Y. A Komalig, H & Langi, Y. 2017. Analisis Regresi Logistik Untuk Menentukan Faktor-Faktor yang Mempengaruhi Indeks Prestasi Kumulatif (IPK) Mahasiswa FMIPA Universitas Sam Ratulangi Manado. JdC 6(2):58-62.