Как использовать функцию confit() в r
Вы можете использовать функцию contin() в R для расчета доверительного интервала для одного или нескольких параметров в подобранной регрессионной модели.
Эта функция использует следующий базовый синтаксис:
contin(объект, параметр, уровень=0,95)
Золото:
- объект : Имя подобранной регрессионной модели.
- parm : Параметры, для которых рассчитывается доверительный интервал (по умолчанию — все)
- level : используемый уровень уверенности (значение по умолчанию — 0,95).
В следующем примере показано, как использовать эту функцию на практике.
Пример: как использовать функцию confit() в R
Предположим, у нас есть следующий фрейм данных в R, который показывает количество часов, потраченных на обучение, количество сданных практических экзаменов и итоговую оценку экзамена 10 студентов в классе:
#create data frame df <- data. frame (score=c(77, 79, 84, 85, 88, 99, 95, 90, 92, 94), hours=c(1, 1, 2, 3, 2, 4, 4, 2, 3, 3), prac_exams=c(2, 3, 3, 2, 4, 5, 4, 3, 5, 4)) #view data frame df score hours prac_exams 1 77 1 2 2 79 1 3 3 84 2 3 4 85 3 2 5 88 2 4 6 99 4 5 7 95 4 4 8 90 2 3 9 92 3 5 10 94 3 4
Теперь предположим, что мы хотим применить следующую модель множественной линейной регрессии в R:
Оценка за экзамен = β 0 + β 1 (часы) + β 2 (практические экзамены)
Мы можем использовать функцию lm() для адаптации этой модели:
#fit multiple linear regression model fit <- lm(score ~ hours + prac_exams, data=df) #view summary of model summary(fit) Call: lm(formula = score ~ hours + prac_exams, data = df) Residuals: Min 1Q Median 3Q Max -2.4324 -1.2632 -0.8956 0.4316 5.1412 Coefficients: Estimate Std. Error t value Pr(>|t|) (Intercept) 68.4029 2.8723 23.815 5.85e-08 *** hours 4.1912 0.9961 4.207 0.0040 ** prac_exams 2.6912 0.9961 2.702 0.0306 * --- Significant. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1 Residual standard error: 2.535 on 7 degrees of freedom Multiple R-squared: 0.9005, Adjusted R-squared: 0.8721 F-statistic: 31.68 on 2 and 7 DF, p-value: 0.0003107
Обратите внимание, что в сводке модели отображаются подобранные коэффициенты регрессии:
- Перехват = 68,4029
- часы = 4,1912
- prac_exams = 2,6912
Чтобы получить 95% доверительный интервал для каждого из этих коэффициентов, мы можем использовать функцию conint() :
#calculate 95% confidence interval for each coefficient in model
confined(fit)
2.5% 97.5%
(Intercept) 61.6111102 75.194772
hours 1.8357237 6.546629
prac_exams 0.3357237 5.046629
Для каждого параметра указан 95% доверительный интервал:
- 95% ДИ для перехвата = [61,61, 75,19]
- 95% ДИ для часов = [1,84, 6,55]
- 95% ДИ для prac_exams = [0,34, 5,05]
Чтобы вычислить доверительный интервал 99%, просто измените значение аргумента уровня :
#calculate 99% confidence interval for each coefficient in model confint(fit, level= 0.99 ) 0.5% 99.5% (Intercept) 58.3514926 78.454390 hours 0.7052664 7.677087 prac_exams -0.7947336 6.177087
А чтобы вычислить только доверительный интервал для конкретного параметра, просто укажите коэффициент с помощью аргумента parm :
#calculate 99% confidence interval for hours confint(fit, parm=' hours ', level= 0.99 ) 0.5% 99.5% hours 0.7052664 7.677087
Обратите внимание, что доверительный интервал 99% показан только для переменной часов.
Дополнительные ресурсы
Следующие руководства предоставляют дополнительную информацию о линейной регрессии в R:
Как интерпретировать результаты регрессии в R
Как выполнить простую линейную регрессию в R
Как выполнить множественную линейную регрессию в R
Как выполнить логистическую регрессию в R