Диагностика регрессии
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-by-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;
regstats
обработки NaN
значения в X
или y
как отсутствующие значения. regstats
не использует наблюдения с отсутствующими значениями от подгонки регрессии.
[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.