В линейной регрессии F-статистика является тестовой статистикой для подхода дисперсионного анализа (ANOVA), чтобы проверить значимость модели или компонентов в модели.
F-статистика на выходном отображении линейной модели является тестовой статистикой для проверки статистической значимости модели. F-статистические значения в anova отображение предназначено для оценки значимости членов или компонентов в модели.
После получения подобранной модели, скажем mdl, использование fitlm или stepwiselm, можно:
Найдите F-statistic vs. constant model в выход отображения или при помощи
disp(mdl)
Отобразите Дисперсионный Анализ для модели используя
anova(mdl,'summary')
Получите F-статистические значения для компонентов, за исключением постоянного термина использование
anova(mdl)
anova метод LinearModel класс.
Этот пример показывает, как оценить подгонку модели и значимость коэффициентов регрессии с помощью F-статистики.
Загрузите выборочные данные.
load hospital tbl = table(hospital.Age,hospital.Weight,hospital.Smoker,hospital.BloodPressure(:,1), ... 'VariableNames',{'Age','Weight','Smoker','BloodPressure'}); tbl.Smoker = categorical(tbl.Smoker);
Подбор линейной регрессионой модели.
mdl = fitlm(tbl,'BloodPressure ~ Age*Weight + Smoker + Weight^2')mdl =
Linear regression model:
BloodPressure ~ 1 + Smoker + Age*Weight + Weight^2
Estimated Coefficients:
Estimate SE tStat pValue
__________ _________ ________ __________
(Intercept) 168.02 27.694 6.067 2.7149e-08
Age 0.079569 0.39861 0.19962 0.84221
Weight -0.69041 0.3435 -2.0099 0.047305
Smoker_true 9.8027 1.0256 9.5584 1.5969e-15
Age:Weight 0.00021796 0.0025258 0.086294 0.93142
Weight^2 0.0021877 0.0011037 1.9822 0.050375
Number of observations: 100, Error degrees of freedom: 94
Root Mean Squared Error: 4.73
R-squared: 0.528, Adjusted R-Squared: 0.503
F-statistic vs. constant model: 21, p-value = 4.81e-14
F-статистическая величина линейной подгонки от постоянной модели равна 21 с p-значением 4,81e-14. Модель значима на уровне 5% значимости. Значение R-квадрат 0,528 означает, что модель объясняет около 53% изменчивости в отклике. Могут быть другие переменные (объяснительные), которые не включены в текущую модель.
Отобразите таблицу Дисперсионного Анализа для подобранной модели.
anova(mdl,'summary')ans=5×5 table
SumSq DF MeanSq F pValue
______ __ ______ ______ __________
Total 4461.2 99 45.062
Model 2354.5 5 470.9 21.012 4.8099e-14
. Linear 2263.3 3 754.42 33.663 7.2417e-15
. Nonlinear 91.248 2 45.624 2.0358 0.1363
Residual 2106.6 94 22.411
Это отображение разделяет изменчивость модели на линейные и нелинейные условия. Поскольку существует два нелинейных условия (Weight^2 и взаимодействие между Weight и Age), нелинейные степени свободы в DF столбец имеет значение 2. Существует трёх линейных членов в модели (один Smoker переменная индикатора, Weight, и Age). Соответствующая F-статистика в F столбец предназначен для проверки значимости линейного и нелинейного членов как отдельных групп.
Когда существуют реплицированные наблюдения, остаточный термин также разделяется на две части; первый - ошибка из-за отсутствия подгонки, а второй - чистая ошибка, независимая от модели, полученная из реплицированных наблюдений. В этом случае F-статистика предназначена для проверки отсутствия подгонки, то есть адекватной ли подгонки или нет. Но, в этом примере, нет реплицированных наблюдений.
Отобразите таблицу Дисперсионного Анализа для терминов модели.
anova(mdl)
ans=6×5 table
SumSq DF MeanSq F pValue
________ __ ________ _________ __________
Age 62.991 1 62.991 2.8107 0.096959
Weight 0.064104 1 0.064104 0.0028604 0.95746
Smoker 2047.5 1 2047.5 91.363 1.5969e-15
Age:Weight 0.16689 1 0.16689 0.0074466 0.93142
Weight^2 88.057 1 88.057 3.9292 0.050375
Error 2106.6 94 22.411
Это отображение разделяет таблицу ANOVA на условия модели. Соответствующая F-статистика в F столбец оценивает статистическую значимость каждого термина. Для примера F-тест на Smoker проверяет, является ли коэффициент переменной индикатора для Smoker отличается от нуля. То есть F-тест определяет, оказывает ли курильщик значительный эффект на BloodPressure. Степени свободы для каждого члена модели являются степенями свободы числителя для соответствующего F-теста. Все термины имеют одну степень свободы. В случае категориальной переменной, степени свободы являются количеством переменных показателя. Smoker имеет только одну переменную индикатора, поэтому она также имеет одну степень свободы.
В линейной регрессии t-statistic полезна для вывода о коэффициентах регрессии. Проверка гипотезы на i коэффициентов проверяет нулевую гипотезу о том, что она равна нулю - что означает, что соответствующий термин не значителен - по сравнению с альтернативной гипотезой о том, что коэффициент отличается от нуля .
Для проверки гипотез на i коэффициента, с
H0: <reservedrangesplaceholder1> <reservedrangesplaceholder0> = 0
H1: <reservedrangesplaceholder1> <reservedrangesplaceholder0> 0,
t -статистический :
где SE (b i) является стандартной ошибкой предполагаемого коэффициента <reservedrangesplaceholder1> <reservedrangesplaceholder0>.
После получения подобранной модели, скажем mdl, использование fitlm или stepwiselm, можно:
Найдите оценки коэффициентов, стандартные ошибки оценок (SE) и t-статические значения тестов гипотез для соответствующих коэффициентов (tStat) в выход отображения.
Вызовите отображение с помощью
display(mdl)
Этот пример показывает, как проверить значимость коэффициентов регрессии с помощью t-статистических.
Загрузите выборочные данные и подбирайте линейную регрессионую модель.
load hald
mdl = fitlm(ingredients,heat)mdl =
Linear regression model:
y ~ 1 + x1 + x2 + x3 + x4
Estimated Coefficients:
Estimate SE tStat pValue
________ _______ ________ ________
(Intercept) 62.405 70.071 0.8906 0.39913
x1 1.5511 0.74477 2.0827 0.070822
x2 0.51017 0.72379 0.70486 0.5009
x3 0.10191 0.75471 0.13503 0.89592
x4 -0.14406 0.70905 -0.20317 0.84407
Number of observations: 13, Error degrees of freedom: 8
Root Mean Squared Error: 2.45
R-squared: 0.982, Adjusted R-Squared: 0.974
F-statistic vs. constant model: 111, p-value = 4.76e-07
Вы можете увидеть, что для каждого коэффициента, tStat = Estimate/SE. -значения для тестов гипотез указаны в pValue столбец. Каждый -статистические тесты на значимость каждого заданного термина других членов в модели. Согласно этим результатам, ни один из коэффициентов не кажется значимым на уровне 5% значимости, хотя значение R-квадрат для модели действительно высоко на уровне 0,97. Это часто указывает на возможную многоколлинейность среди переменных.
Используйте ступенчатую регрессию, чтобы решить, какие переменные включать в модель.
load hald
mdl = stepwiselm(ingredients,heat)1. Adding x4, FStat = 22.7985, pValue = 0.000576232 2. Adding x1, FStat = 108.2239, pValue = 1.105281e-06
mdl =
Linear regression model:
y ~ 1 + x1 + x4
Estimated Coefficients:
Estimate SE tStat pValue
________ ________ _______ __________
(Intercept) 103.1 2.124 48.54 3.3243e-13
x1 1.44 0.13842 10.403 1.1053e-06
x4 -0.61395 0.048645 -12.621 1.8149e-07
Number of observations: 13, Error degrees of freedom: 10
Root Mean Squared Error: 2.73
R-squared: 0.972, Adjusted R-Squared: 0.967
F-statistic vs. constant model: 177, p-value = 1.58e-08
В этом примере stepwiselm начинается с модели константы (по умолчанию) и использует прямой выбор, чтобы постепенно добавить x4 и x1. Каждая переменная предиктора в конечной модели значительна, учитывая, что другая находится в модели. Алгоритм останавливается, когда добавление ни одной из других переменных предиктора значительно улучшается в модели. Для получения дополнительной информации о ступенчатой регрессии смотрите stepwiselm.
anova | coefCI | coefTest | fitlm | LinearModel | stepwiselm