Диагностика регрессии
regstats(y,X,
model
)
stats = regstats(...)
stats = regstats(y,X,model
,whichstats
)
regstats(y,X,
выполняет полилинейную регрессию ответов в model
)y
на предикторах в X
. X
является n-by-p матрицей p предикторов при каждом из n наблюдений. y
является n-1 вектором наблюдаемых ответов.
По умолчанию regstats
добавляет первый столбец 1 с к X
, соответствуя постоянному члену в модели. Не вводите столбец 1 с непосредственно в X
.
Дополнительный вход model
управляет моделью регрессии. По умолчанию regstats
использует линейную аддитивную модель с постоянным термином. model
может быть любым из следующего:
'linear'
— Постоянные и линейные члены (значение по умолчанию)
'interaction'
— Постоянные, линейные, и периоды взаимодействия
'quadratic'
— Постоянный, линейный, взаимодействие и условия в квадрате
'purequadratic'
— Постоянные, линейные, и условия в квадрате
Также model
может быть матрицей образцовых условий, принятых функцией x2fx
. Смотрите x2fx
для описания этой матрицы и для описания порядка, в котором появляются условия. Можно использовать эту матрицу, чтобы задать другие модели включая единицы без постоянного термина.
С этим синтаксисом функция отображает графический интерфейс пользователя (GUI) со списком диагностической статистики, как показано в следующей фигуре.
Когда вы устанавливаете флажки, соответствующие статистике, вы хотите вычислить и нажать OK, regstats
возвращает выбранную статистику в рабочую область MATLAB®. Имена переменных рабочей области отображены на правой стороне интерфейса. Можно поменять имя переменной рабочей области к любому допустимому имени переменной MATLAB.
stats = regstats(...)
создает структуру stats
, поля которого содержат все диагностические статистические данные для регрессии. Этот синтаксис не открывает графический интерфейс пользователя. Поля stats
перечислены в следующей таблице.
Поле | Описание |
---|---|
Q | Q от разложения QR матрицы проекта |
R | R от разложения QR матрицы проекта |
beta | Коэффициенты регрессии |
covb | Ковариация коэффициентов регрессии |
yhat | Подходящие значения данных об ответе |
r | Невязки |
mse | Среднеквадратическая ошибка |
rsquare | Статистическая величина R2 |
adjrsquare | Статистическая величина Скорректированного R2 |
leverage | Рычаги |
hatmat | Матрица шляпы |
s2_i | Удалите 1 отклонение |
beta_i | Удалите 1 коэффициент |
standres | Стандартизированные невязки |
studres | Невязки Studentized |
dfbetas | Масштабированное изменение в коэффициентах регрессии |
dffit | Изменитесь в подходящих значениях |
dffits | Масштабированное изменение в подходящих значениях |
covratio | Изменитесь в ковариации |
cookd | Расстояние повара |
tstat | t статистика и p - значения для коэффициентов |
fstat | F статистическая величина и p - значение |
dwstat | Статистическая величина Дербин-Уотсона и p - значение |
Обратите внимание на то, что полевые имена stats
соответствуют именам переменных, возвращенных в рабочее пространство MATLAB, когда вы используете графический интерфейс пользователя. Например, stats.beta
соответствует переменной beta
, которая возвращена, когда вы выбираете Coefficients в графический интерфейсе пользователя и нажимаете ОК.
stats = regstats(y,X,
возвращает только статистику, которую вы задаете в model
,whichstats
)whichstats
. whichstats
может быть односимвольным вектором, таким как 'leverage'
, массив строк, такой как ["leverage","standres","studres"]
или массив ячеек из символьных векторов, такой как {'leverage','standres','studres'}
. Установите whichstats
на 'all'
возвращать все статистические данные.
Статистическая величина F вычисляется под предположением, что модель содержит постоянный термин. Это не правильно для моделей без константы. Статистическая величина R2 может быть отрицательной для моделей без константы, которая указывает, что модель не подходит для данных.
Откройте графический интерфейс пользователя regstats
с помощью данных из hald.mat
:
load hald regstats(heat,ingredients,'linear');
Выберите Fitted Values и Residuals в графический интерфейсе пользователя:
Нажмите OK, чтобы экспортировать подходящие значения и невязки к рабочему пространству MATLAB в переменных под названием yhat
и r
, соответственно.
Можно создать те же переменные с помощью stats
вывод, не открывая графический интерфейс пользователя:
whichstats = {'yhat','r'}; stats = regstats(heat,ingredients,'linear',whichstats); yhat = stats.yhat; r = stats.r;
[1] Белсли, D. A. Э. Кух и Р. Э. Велш. Диагностика регрессии. Хобокен, NJ: John Wiley & Sons, Inc., 1980.
[2] Chatterjee, S. и А. С. Хади. “Влиятельные Наблюдения, Высокие Точки Рычагов и Выбросы в Линейной регрессии”. Статистическая Наука. Издание 1, 1986, стр 379–416.
[3] Приготовьте, R. D. и С. Вайсберг. Невязки и влияние в регрессии. Нью-Йорк: Chapman & Hall/CRC Press, 1983.
[4] Гудолл, C. R. “Вычисление Используя разложение QR”. Руководство в статистике. Издание 9, Амстердам: Elsevier/North-Holland, 1993.