Как найти коэффициент детерминации (R-квадрат) в R


Коэффициент детерминации (обычно обозначаемый как R 2 ) представляет собой долю дисперсии переменной отклика , которая может быть объяснена независимыми переменными в регрессионной модели.

В этом руководстве представлен пример того, как найти и интерпретировать R 2 в регрессионной модели в R.

Связанный:Что такое хорошее значение R-квадрата?

Пример: найти и интерпретировать R-квадрат в R

Предположим, у нас есть следующий набор данных, который содержит данные о количестве учебных часов, сданных подготовительных экзаменах и результатах экзаменов, полученных для 15 студентов:

#create data frame
df <- data.frame(hours=c(1, 2, 2, 4, 2, 1, 5, 4, 2, 4, 4, 3, 6, 5, 3),
 prep_exams=c(1, 3, 3, 5, 2, 2, 1, 1, 0, 3, 4, 3, 2, 4, 4),
 score=c(76, 78, 85, 88, 72, 69, 94, 94, 88, 92, 90, 75, 96, 90, 82))

#view first six rows of data frame
head(df)

 hours prep_exams score
1 1 1 76
2 2 3 78
3 2 3 85
4 4 5 88
5 2 2 72
6 1 2 69

В следующем коде показано, как подобрать модель множественной линейной регрессии к этому набору данных и просмотреть выходные данные модели в R:

#fit regression model
model <- lm(score~hours+prep_exams, data=df)

#view model summary
summary(model)

Call:
lm(formula = score ~ hours + prep_exams, data = df)

Residuals:
 Min 1Q Median 3Q Max 
-7.9896 -2.5514 0.3079 3.3370 7.0352 

Coefficients:
 Estimate Std. Error t value Pr(>|t|) 
(Intercept) 71.8078 3.5222 20.387 1.12e-10 \*\*\*
hours 5.0247 0.8964 5.606 0.000115 \*\*\*
prep_exams -1.2975 0.9689 -1.339 0.205339 
---
Signif. codes: 0 '\*\*\*' 0.001 '\*\*' 0.01 '\*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 4.944 on 12 degrees of freedom
Multiple R-squared: 0.7237, Adjusted R-squared: 0.6776 
F-statistic: 15.71 on 2 and 12 DF, p-value: 0.0004454

R-квадрат модели (показан в самом низу вывода) оказывается равным 0,7237 .

Это означает, что 72,37% вариаций в экзаменационных баллах можно объяснить количеством часов обучения и количеством сданных подготовительных экзаменов.

Обратите внимание, что вы также можете получить доступ к этому значению, используя следующий синтаксис:

summary(model)$r.squared

[1] 0.7236545

Как интерпретировать значение R-квадрата

Значение R-квадрата всегда будет находиться в диапазоне от 0 до 1.

Значение 1 указывает, что независимые переменные могут полностью объяснить дисперсию переменной отклика, а значение 0 указывает на то, что независимые переменные не могут объяснить дисперсию переменной отклика.

В целом, чем больше значение R-квадрата регрессионной модели, тем лучше независимые переменные способны предсказать значение переменной отклика.

Прочтитеэту статью , чтобы узнать, как определить, считается ли данное значение R-квадрата «хорошим» для данной регрессионной модели.

Связанный: Как рассчитать скорректированный R-квадрат в R

Замечательно! Вы успешно подписались.
Добро пожаловать обратно! Вы успешно вошли
Вы успешно подписались на кодкамп.
Срок действия вашей ссылки истек.
Ура! Проверьте свою электронную почту на наличие волшебной ссылки для входа.
Успех! Ваша платежная информация обновлена.
Ваша платежная информация не была обновлена.