ответ

Класс: GeneralizedLinearMixedModel

Вектор отклика обобщенной линейной модели смешанных эффектов

Синтаксис

y = response(glme)
[y,binomialsize] = response(glme)

Описание

пример

y = response(glme) возвращает вектор отклика, y раньше соответствовал обобщенной линейной смешанной модели glme эффектов.

[y,binomialsize] = response(glme) также возвращает биномиальный размер, сопоставленный с каждым элементом y, если условное распределение ответа, учитывая случайные эффекты является биномом.

Входные параметры

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

Обобщенная линейная модель смешанных эффектов, заданная как объект GeneralizedLinearMixedModel. Для свойств и методов этого объекта, смотрите GeneralizedLinearMixedModel.

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

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

Значения ответа, заданные как n-by-1 вектор, где n является количеством наблюдений.

Для наблюдения i с предшествующими весами wip и биномиальный размер ni (когда применимый), значения ответа yi может иметь следующие значения.

РаспределениеРазрешенные значенияПримечания
Binomial

{0,1wipni,2wipni,,1}

wip и ni являются целочисленными значениями> 0
Poisson

{0,1wip,2wip,}

wip является целочисленным значением> 0
Gamma(0,∞)wip ≥ 0
InverseGaussian(0,∞)wip ≥ 0
normal(-∞,∞)wip ≥ 0

Можно получить доступ к предшествующему свойству wip весов с помощью записи через точку. Например, чтобы получить доступ к предшествующему свойству весов для модели glme:

glme.ObservationInfo.Weights

Биномиальный размер сопоставил с каждым элементом y, возвращенного как n-by-1 вектор, где n является количеством наблюдений. response только возвращает binomialsize, если условное распределение ответа, учитывая случайные эффекты является биномом. binomialsize пуст для других дистрибутивов.

Примеры

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

Загрузите выборочные данные.

load mfr

Эти моделируемые данные от компании-производителя, которая управляет 50 фабриками во всем мире с каждой фабрикой, запускающей процесс пакетной обработки, чтобы создать готовое изделие. Компания хочет сократить число дефектов в каждом пакете, таким образом, это разработало новый производственный процесс. Чтобы протестировать эффективность нового процесса, компания выбрала 20 своих фабрик наугад, чтобы участвовать в эксперименте: Десять фабрик реализовали новый процесс, в то время как другие десять продолжали запускать старый процесс. На каждой из этих 20 фабрик компания запустила пять пакетов (для в общей сложности 100 пакетов) и записала следующие данные:

  • Отметьте, чтобы указать, использовал ли пакет новый процесс (newprocess)

  • Время вычислений для каждого пакета, в часах (time)

  • Температура пакета, в градусах Цельсия (temp)

  • Категориальная переменная, указывающая на поставщика (A, B или C) химиката, используемого в пакете (supplier)

  • Количество дефектов в пакете (defects)

Данные также включают time_dev и temp_dev, которые представляют абсолютное отклонение времени и температуры, соответственно, из стандарта процесса 3 часов на уровне 20 градусов Цельсия.

Соответствуйте обобщенной линейной модели смешанных эффектов использование newprocess, time_dev, temp_dev и supplier как предикторы фиксированных эффектов. Включайте термин случайных эффектов для прерывания, сгруппированного factory, чтобы составлять качественные различия, которые могут существовать из-за специфичных для фабрики изменений. Переменная отклика defects имеет распределение Пуассона и соответствующую функцию ссылки для этой модели, является журналом. Используйте подходящий метод Лапласа, чтобы оценить коэффициенты. Задайте фиктивную переменную, кодирующую как 'effects', таким образом, фиктивная переменная содействующая сумма к 0.

Количество дефектов может быть смоделировано с помощью распределения Пуассона

дефектыijПуассон(μij)

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

журнал(μij)=β0+β1newprocessij+β2time_devij+β3temp_devij+β4supplier_Cij+β5supplier_Bij+bi,

где

  • дефектыij количество дефектов, наблюдаемых в пакете, произведенном фабрикой i во время пакета j.

  • μij среднее количество дефектов, соответствующих фабрике i (где i=1,2,...,20) во время пакета j (где j=1,2,...,5).

  • newprocessij, time_devij, и temp_devij измерения для каждой переменной, которые соответствуют фабрике i во время пакета j. Например, newprocessij указывает ли пакет, произведенный фабрикой i во время пакета j используемый новый процесс.

  • supplier_Cij и supplier_Bij фиктивные переменные, которые используют эффекты (сумма к нулю), кодирование, чтобы указать или компания C или B, соответственно, предоставило химикаты процесса для пакета, произведенного фабрикой i во время пакета j.

  • biN(0,σb2) прерывание случайных эффектов для каждой фабрики i это составляет специфичное для фабрики изменение по качеству.

glme = fitglme(mfr,'defects ~ 1 + newprocess + time_dev + temp_dev + supplier + (1|factory)',...
    'Distribution','Poisson','Link','log','FitMethod','Laplace','DummyVarCoding','effects');

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

y = response(glme);   % Observed response values
yfit = fitted(glme);  % Fitted response values

Создайте scatterplot наблюдаемых значений ответа по сравнению с подходящими значениями. Добавьте ссылочную строку, чтобы улучшить визуализацию.

figure
scatter(yfit,y)
xlim([0,12])
ylim([0,12])
refline(1,0)
title('Response versus Fitted Values')
xlabel('Fitted Values')
ylabel('Response')

График показывает положительную корреляцию между подходящими значениями и наблюдаемыми значениями ответа.

Ссылки

[1] Hox, J. Многоуровневый анализ, методы и приложения. Lawrence Erlbaum Associates, Inc., 2002.

Смотрите также

| |