Cara menghitung r-kuadrat yang disesuaikan di r
R-squared , sering ditulis R2 , adalah proporsi varians variabel respon yang dapat dijelaskan oleh variabel prediktor dalam model regresi linier .
Nilai R squared dapat berkisar antara 0 hingga 1. Nilai 0 menunjukkan bahwa variabel respon sama sekali tidak dapat dijelaskan oleh variabel prediktor, sedangkan nilai 1 menunjukkan bahwa variabel respon dapat dijelaskan oleh variabel prediktor. dijelaskan dengan sempurna tanpa kesalahan oleh prediktor. variabel.
R-squared yang disesuaikan adalah versi modifikasi dari R-squared yang menyesuaikan jumlah prediktor dalam model regresi. Ini dihitung sebagai berikut:
Disesuaikan R 2 = 1 – [(1-R 2 )*(n-1)/(nk-1)]
Emas:
- R 2 : R 2 model
- n : Jumlah pengamatan
- k : Banyaknya variabel prediktor
Karena R2 selalu meningkat saat Anda menambahkan prediktor ke model, R2 yang disesuaikan dapat berfungsi sebagai metrik yang memberi tahu Anda seberapa berguna suatu model, disesuaikan berdasarkan jumlah prediktor dalam model .
Tutorial ini menjelaskan cara menghitung R2 yang disesuaikan untuk model regresi di R.
Terkait: Berapa nilai R-kuadrat yang bagus?
Contoh: Cara menghitung R-kuadrat yang disesuaikan di R
Kita dapat menggunakan kode berikut untuk membuat model regresi linier berganda di R menggunakan kumpulan data bawaan yang disebut mtcars :
model <- lm (hp ~ mpg + wt + drat + qsec, data=mtcars)
Dan kita dapat menggunakan salah satu dari tiga metode untuk mencari R-kuadrat yang disesuaikan dari model:
Metode 1: Gunakan fungsi ringkasan()
Kita dapat memvisualisasikan R-kuadrat dan R-kuadrat yang disesuaikan dari model hanya dengan menggunakan fungsi ringkasan() :
summary (model)
Call:
lm(formula = hp ~ mpg + wt + drat + qsec, data = mtcars)
Residuals:
Min 1Q Median 3Q Max
-48,801 -16,007 -5,482 11,614 97,338
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 473.779 105.213 4.503 0.000116 ***
mpg -2.877 2.381 -1.209 0.237319
wt 26.037 13.514 1.927 0.064600 .
drat 4.819 15.952 0.302 0.764910
qsec -20.751 3.993 -5.197 1.79e-05 ***
---
Significant. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Residual standard error: 32.25 on 27 degrees of freedom
Multiple R-squared: 0.8073, Adjusted R-squared: 0.7787
F-statistic: 28.27 on 4 and 27 DF, p-value: 2.647e-09
Di bagian bawah output kita dapat melihat yang berikut:
- Kelipatan R kuadrat: 0,8073
- R-kuadrat yang disesuaikan: 0,7787
Metode 2: Gunakan ringkasan(model)$adj.r.squared
Jika kita hanya ingin mendapatkan model R-kuadrat yang disesuaikan, kita dapat menggunakan fungsi berikut:
summary (model)$adj.r.squared
[1] 0.7787005
Metode 3: Gunakan fungsi khusus
Cara lain untuk menemukan R-kuadrat model yang sesuai adalah dengan menulis fungsi khusus:
#define function to calculate adjusted R-squared
adj_r2 <- function (x) {
return (1 - ((1-summary(x)$r.squared)*( nobs (x)-1)/( nobs (x)- length (x$coefficients)-1)))
}
#use function to calculate adjusted R-squared of the model
adj_r2(model)
[1] 0.7787005
numeric(0)
Perhatikan bahwa masing-masing dari tiga metode yang dibagikan di sini memberikan nilai yang sama untuk R-kuadrat yang disesuaikan.
Sumber daya tambahan
Cara melakukan regresi linier sederhana di R
Cara melakukan regresi linier berganda di R
Bagaimana melakukan regresi polinomial di R