Cara mengekstrak koefisien regresi dari glm() di r
Anda dapat menggunakan metode berikut untuk mengekstrak koefisien regresi dari fungsi glm() di R:
Metode 1: ekstrak semua koefisien regresi
model$coefficients
Metode 2: Ekstrak koefisien regresi untuk variabel tertentu
model$coefficients[' my_variable ']
Metode 3: Ekstrak semua koefisien regresi dengan standar error, nilai Z dan nilai P
summary(model)$coefficients
Contoh berikut menunjukkan cara menggunakan metode ini dalam praktik.
Contoh: ekstrak koefisien regresi dari glm() di R
Misalkan kita memasang model regresi logistik menggunakan kumpulan data default dari paket ISLR :
#load dataset data <- ISLR::Default #view first six rows of data head(data) default student balance income 1 No No 729.5265 44361.625 2 No Yes 817.1804 12106.135 3 No No 1073.5492 31767.139 4 No No 529.2506 35704.494 5 No No 785.6559 38463.496 6 No Yes 919.5885 7491.559 #fit logistic regression model model <- glm(default~student+balance+income, family=' binomial ', data=data) #view summary of logistic regression model summary(model) Call: glm(formula = default ~ student + balance + income, family = "binomial", data = data) Deviance Residuals: Min 1Q Median 3Q Max -2.4691 -0.1418 -0.0557 -0.0203 3.7383 Coefficients: Estimate Std. Error z value Pr(>|z|) (Intercept) -1.087e+01 4.923e-01 -22.080 < 2e-16 *** studentYes -6.468e-01 2.363e-01 -2.738 0.00619 ** balance 5.737e-03 2.319e-04 24.738 < 2e-16 *** income 3.033e-06 8.203e-06 0.370 0.71152 --- Significant. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1 (Dispersion parameter for binomial family taken to be 1) Null deviance: 2920.6 on 9999 degrees of freedom Residual deviance: 1571.5 on 9996 degrees of freedom AIC: 1579.5 Number of Fisher Scoring iterations: 8
Kita dapat mengetik model$coefisien untuk mengekstrak semua koefisien regresi dari model:
#extract all regression coefficients
model$coefficients
(Intercept) studentYes balance income
-1.086905e+01 -6.467758e-01 5.736505e-03 3.033450e-06
Kita juga dapat mengetikkan model$coefisien[‘keseimbangan’] untuk mengekstrak koefisien regresi untuk variabel keseimbangan saja:
#extract coefficient for 'balance'
model$coefficients[' balance ']
balance
0.005736505
Untuk menampilkan koefisien regresi beserta kesalahan standarnya, nilai z, dan nilai p , kita dapat menggunakan koefisien ringkasan(model)$ sebagai berikut:
#view regression coefficients with standard errors, z values and p-values
summary(model)$coefficients
Estimate Std. Error z value Pr(>|z|)
(Intercept) -1.086905e+01 4.922555e-01 -22.080088 4.911280e-108
studentYes -6.467758e-01 2.362525e-01 -2.737646 6.188063e-03
balance 5.736505e-03 2.318945e-04 24.737563 4.219578e-135
income 3.033450e-06 8.202615e-06 0.369815 7.115203e-01
Kami juga dapat mengakses nilai tertentu dalam keluaran ini.
Misalnya, kita dapat menggunakan kode berikut untuk mengakses nilai p dari variabel saldo :
#view p-value for balance variable summary(model)$coefficients[' balance ', ' Pr(>|z|) '] [1] 4.219578e-135
Atau kita dapat menggunakan kode berikut untuk mengakses nilai p untuk setiap koefisien regresi:
#view p-value for all variables summary(model)$coefficients[, ' Pr(>|z|) '] (Intercept) studentYes balance income 4.911280e-108 6.188063e-03 4.219578e-135 7.115203e-01
Nilai P ditampilkan untuk setiap koefisien regresi dalam model.
Anda dapat menggunakan sintaks serupa untuk mengakses nilai apa pun di output.
Sumber daya tambahan
Tutorial berikut menjelaskan cara melakukan tugas umum lainnya di R:
Cara melakukan regresi linier sederhana di R
Cara melakukan regresi linier berganda di R
Bagaimana melakukan regresi logistik di R
Bagaimana melakukan regresi kuadrat di R