regstats

Регрессионная диагностика

Синтаксис

regstats(y,X,model)
stats = regstats(...)
stats = regstats(y,X,model,whichstats)

Описание

regstats(y,X,model) выполняет многолинейную регрессию ответов в y на предикторах в X. X - матрица n на p из p предикторов в каждом из n наблюдений. y представляет собой вектор наблюдаемых реакций n на 1.

Примечание

По умолчанию, regstats добавляет первый столбец 1s в X, соответствующий постоянному члену в модели. Не вводите столбец 1с непосредственно в X.

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

  • 'linear' - Постоянные и линейные условия (по умолчанию)

  • 'interaction' - Константа, линейная и условия взаимодействия

  • 'quadratic' - Константа, линейный, взаимодействие и квадратные условия

  • 'purequadratic' - Постоянные, линейные и квадратные условия

Другой способ model может быть матрицей модельных членов, принятых x2fx функция. Посмотрите x2fx для описания этой матрицы и для описания порядка, в котором появляются термины. Можно использовать эту матрицу, чтобы задать другие модели, включая таковые без постоянного термина.

С помощью этого синтаксиса функция отображает графический пользовательский интерфейс (GUI) со списком диагностической статистики, как показано на следующем рисунке.

Когда вы устанавливаете флажки, соответствующие статистике, которую вы хотите вычислить, и нажимаете OK, regstats возвращает выбранную статистику в MATLAB® рабочей области. Имена переменных рабочей области отображаются в правой части интерфейса. Вы можете изменить имя переменной рабочей области на любое допустимое имя переменного MATLAB.

stats = regstats(...) создает структуру stats, поля которого содержат всю диагностическую статистику для регрессии. Этот синтаксис не открывает графический интерфейс пользователя. Поля stats перечислены в следующей таблице.

ОбластьОписание
QQ из QR-разложения матрицы проекта
RR из QR-разложения матрицы проекта
betaКоэффициенты регрессии
covbКовариация коэффициентов регрессии
yhatУстановленные значения данных отклика
rНевязки
mseСредняя квадратичная невязка
rsquareR2 статистическая величина
adjrsquareСкорректированный R2 статистическая величина
leverageРычаги
hatmatМатрица шляпы
s2_iDelete-1 отклонения
beta_iDelete-1 коэффициенты
standresСтандартизированные невязки
studresИсследуемые невязки
dfbetasМасштабированное изменение коэффициентов регрессии
dffitИзменение подобранных значений
dffitsМасштабное изменение подобранных значений
covratioИзменение ковариации
cookdРасстояние Кука
tstatt статистика и p -значения для коэффициентов
fstatF statistic и p -значение
dwstatСтатистика Дурбина-Ватсона и p -значение

Обратите внимание, что имена полей stats соответствуют именам переменных, возвращаемых в рабочее пространство MATLAB при использовании графический интерфейс пользователя. Для примера, stats.beta соответствует переменной beta это возвращается при выборе Coefficients в графическом интерфейсе пользователя и нажатии кнопки OK.

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] Belsley, D. A., E. Kuh, and R. E. Welsch. Регрессионная диагностика. Hoboken, NJ: John Wiley & Sons, Inc., 1980.

[2] Chatterjee, S., and A. S. Hadi. «Влиятельные наблюдения, высокие точки использования и выбросы в линейной регрессии». Статистическая наука. Том 1, 1986, стр. 379-416.

[3] Кук, Р. Д. и С. Вайсберг. Невязки и влияние в регрессии. Нью-Йорк: Chapman & Hall/CRC Press, 1983.

[4] Goodall, C. R. «Расчет с использованием QR-декомпозиции». Справочник по статистике. Том 9, Амстердам: Elsevier/North-Holland, 1993.

Представлено до R2006a
Для просмотра документации необходимо авторизоваться на сайте