exponenta event banner

остатки

Класс: LinearMixedModel

Остатки установленной линейной модели смешанных эффектов

Описание

пример

R = residuals(lme) возвращает необработанные условные остатки из аппроксимированной линейной модели смешанных эффектов lme.

пример

R = residuals(lme,Name,Value) возвращает остатки из линейной модели смешанных эффектов lme с дополнительными опциями, указанными одним или несколькими Name,Value аргументы пары.

Например, можно указать Пирсон или стандартизированные остатки, или остатки с вкладами только фиксированных эффектов.

Входные аргументы

развернуть все

Линейная модель смешанных эффектов, заданная как LinearMixedModel объект, построенный с помощью fitlme или fitlmematrix.

Аргументы пары «имя-значение»

Укажите дополнительные пары, разделенные запятыми Name,Value аргументы. Name является именем аргумента и Value - соответствующее значение. Name должен отображаться внутри кавычек. Можно указать несколько аргументов пары имен и значений в любом порядке как Name1,Value1,...,NameN,ValueN.

Индикатор для условных остатков, указанный как разделенная запятыми пара, состоящая из 'Conditional' и одно из следующих.

TrueВклад как фиксированных эффектов, так и случайных эффектов (условный)
FalseВклад только от фиксированных эффектов (маргинальный)

Пример: 'Conditional,'False'

Остаточный тип, определяемый разделенной запятыми парой, состоящей из ResidualType и одно из следующих.

Тип остаткаУсловныйКрайний
'Raw'

riC = [y ^ − Zb ^] i

riM = [y Xβ ^] i

'Pearson'

priC = riC [Var ^ y, b (y Xβ − Zb)] ii

priM = riM [Var ^ y (y − Xβ)] ii

'Standardized'

stiC = riC [Var ^ y (rC)] ii

stiM = rIm [Var (rM)] ii

Дополнительные сведения об условных и предельных остатках и остаточных отклонениях см. в разделе Definitions в конце этой страницы.

Пример: 'ResidualType','Standardized'

Выходные аргументы

развернуть все

Остатки установленной линейной модели смешанных эффектов lmeвозвращается в виде вектора n-by-1, где n - количество наблюдений.

Примеры

развернуть все

Загрузите образцы данных.

load('weight.mat');

weight содержит данные продольного исследования, в котором 20 субъектов случайным образом распределяются по 4 программам упражнений, и их потеря веса регистрируется в течение шести 2-недельных периодов времени. Это смоделированные данные.

Сохраните данные в таблице. Определить Subject и Program в качестве категориальных переменных.

tbl = table(InitialWeight,Program,Subject,Week,y);
tbl.Subject = nominal(tbl.Subject);
tbl.Program = nominal(tbl.Program);

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

lme = fitlme(tbl,'y ~ InitialWeight + Program*Week + (Week|Subject)');

Вычислите соответствующие значения и необработанные остатки.

F = fitted(lme);
R = residuals(lme);

Постройте график остаточных значений по сравнению с подходящими значениями.

plot(F,R,'bx')
xlabel('Fitted Values')
ylabel('Residuals')

Figure contains an axes. The axes contains an object of type line.

Теперь постройте график остатков по сравнению с подходящими значениями, сгруппированными по программе.

figure();
gscatter(F,R,Program)

Figure contains an axes. The axes contains 4 objects of type line. These objects represent A, B, C, D.

Остатки, похоже, ведут себя одинаково на всех уровнях программы, как и ожидалось.

Загрузите образцы данных.

load carbig

Сохраните переменные для миль на галлон (MPG), ускорения, лошадиных сил, цилиндров и модельного года в таблице.

tbl = table(MPG,Acceleration,Horsepower,Cylinders,Model_Year);

Подберите линейную модель смешанных эффектов для миль на галлон (MPG) с фиксированными эффектами для ускорения, лошадиных сил и цилиндров и потенциально коррелированными случайными эффектами для перехвата и ускорения, сгруппированными по модельному году.

lme = fitlme(tbl,'MPG ~ Acceleration + Horsepower + Cylinders + (Acceleration|Model_Year)');

Вычислите условные остатки Пирсона и отобразите первые пять остатков.

PR = residuals(lme,'ResidualType','Pearson');
PR(1:5)
ans = 5×1

   -0.0533
    0.0652
    0.3655
   -0.0106
   -0.3340

Вычислите маргинальные остатки Пирсона и отобразите первые пять остатков.

PRM = residuals(lme,'ResidualType','Pearson','Conditional',false);
PRM(1:5)
ans = 5×1

   -0.1250
    0.0130
    0.3242
   -0.0861
   -0.3006

Загрузите образцы данных.

load carbig

Сохраните переменные для миль на галлон (MPG), ускорения, лошадиных сил, цилиндров и модельного года в таблице.

tbl = table(MPG,Acceleration,Horsepower,Cylinders,Model_Year);

Подберите линейную модель смешанных эффектов для миль на галлон (MPG) с фиксированными эффектами для ускорения, лошадиных сил и цилиндров и потенциально коррелированными случайными эффектами для перехвата и ускорения, сгруппированными по модельному году.

lme = fitlme(tbl,'MPG ~ Acceleration + Horsepower + Cylinders + (Acceleration|Model_Year)');

Нарисуйте гистограмму необработанных остатков с нормальной посадкой.

r = residuals(lme);
histfit(r)

Figure contains an axes. The axes contains 2 objects of type bar, line.

Нормальное распределение, кажется, хорошо подходит для остатков.

Вычислите условные остатки Пирсона и стандартизированные остатки и создайте прямоугольные графики всех трех типов остатков.

pr = residuals(lme,'ResidualType','Pearson');
st = residuals(lme,'ResidualType','Standardized');
X = [r pr st];
boxplot(X)

Figure contains an axes. The axes contains 21 objects of type line.

Красные знаки плюс показывают наблюдения с остатками выше или ниже q3 + 1,5 (q3-q1) и q1-1,5 (q3-q1), где q1 и q3 являются 25-м и 75-м процентилями соответственно.

Найдите наблюдения с остатками, которые составляют 2,5 стандартных отклонения выше и ниже среднего значения.

find(r > mean(r,'omitnan') + 2.5*std(r,'omitnan'))
ans = 7×1

    62
   252
   255
   330
   337
   341
   396

find(r < mean(r,'omitnan') - 2.5*std(r,'omitnan'))
ans = 3×1

   119
   324
   375

Подробнее

развернуть все