Подбор линейной модели смешанных эффектов
создает линейную модель откликов со смешанными эффектами lme
= fitlmematrix(X
,y
,Z
,[])y
использование матрицы проекта с фиксированными эффектами X
и конструкторскую матрицу или матрицы случайных эффектов в Z
.
[]
подразумевает, что существует одна группа. То есть сгруппированная переменная G
является ones(n,1)
, где n количество наблюдений. Использование fitlmematrix(X,Y,Z,[])
без заданного ковариационного шаблона, скорее всего, приводит к неидентифицируемой модели. Этот синтаксис рекомендуется только, если вы строите информацию о группировке в проекте случайных эффектов Z
и задайте ковариационный шаблон для случайных эффектов, используя 'CovariancePattern'
аргумент пары "имя-значение".
также создает линейную модель смешанных эффектов с дополнительными опциями, заданными одним или несколькими lme
= fitlmematrix(___,Name,Value
)Name,Value
парные аргументы, с использованием любого из предыдущих входных параметров.
Для примера можно задать имена отклика, предиктора и сгруппированных переменных. Можно также задать ковариационный шаблон, метод аппроксимации или алгоритм оптимизации.
Загрузите выборочные данные.
load carsmall
Подгонка модели линейных смешанных эффектов, где миля на галлон (MPG) является ответом, вес является переменной, и точка пересечения изменяется в зависимости от модельного года. Сначала задайте матрицы проекта. Затем подгоните модель с помощью заданных матриц проекта.
y = MPG; X = [ones(size(Weight)), Weight]; Z = ones(size(y)); lme = fitlmematrix(X,y,Z,Model_Year)
lme = Linear mixed-effects model fit by ML Model information: Number of observations 94 Fixed effects coefficients 2 Random effects coefficients 3 Covariance parameters 2 Formula: y ~ x1 + x2 + (z11 | g1) Model fit statistics: AIC BIC LogLikelihood Deviance 486.09 496.26 -239.04 478.09 Fixed effects coefficients (95% CIs): Name Estimate SE tStat DF pValue {'x1'} 43.575 2.3038 18.915 92 1.8371e-33 {'x2'} -0.0067097 0.0004242 -15.817 92 5.5373e-28 Lower Upper 39 48.151 -0.0075522 -0.0058672 Random effects covariance parameters (95% CIs): Group: g1 (3 Levels) Name1 Name2 Type Estimate Lower Upper {'z11'} {'z11'} {'std'} 3.301 1.4448 7.5421 Group: Error Name Estimate Lower Upper {'Res Std'} 2.8997 2.5075 3.3532
Теперь подбирайте ту же модель, встраивая группировку в Z
матрица.
Z = double([Model_Year==70, Model_Year==76, Model_Year==82]); lme = fitlmematrix(X,y,Z,[],'Covariancepattern','Isotropic')
lme = Linear mixed-effects model fit by ML Model information: Number of observations 94 Fixed effects coefficients 2 Random effects coefficients 3 Covariance parameters 2 Formula: y ~ x1 + x2 + (z11 + z12 + z13 | g1) Model fit statistics: AIC BIC LogLikelihood Deviance 486.09 496.26 -239.04 478.09 Fixed effects coefficients (95% CIs): Name Estimate SE tStat DF pValue {'x1'} 43.575 2.3038 18.915 92 1.8371e-33 {'x2'} -0.0067097 0.0004242 -15.817 92 5.5373e-28 Lower Upper 39 48.151 -0.0075522 -0.0058672 Random effects covariance parameters (95% CIs): Group: g1 (1 Levels) Name1 Name2 Type Estimate Lower Upper {'z11'} {'z11'} {'std'} 3.301 1.4448 7.5421 Group: Error Name Estimate Lower Upper {'Res Std'} 2.8997 2.5075 3.3532
Загрузите выборочные данные.
load('weight.mat');
weight
содержит данные продольного исследования, где 20 субъектам случайным образом назначены 4 программы упражнений (A, B, C, D), и их потеря веса регистрируется в течение шести 2-недельных периодов времени. Это моделируемые данные.
Определите Subject
и Program
как категориальные переменные. Создайте матрицы проекта для модели линейных смешанных эффектов с начальным весом, типом программы, неделей и взаимодействием между неделей и типами программы в качестве фиксированных эффектов. Точка пересечения и коэффициент недели варьируются в зависимости от субъекта.
Эта модель соответствует
где = 1, 2,..., 120, и = 1, 2, ..., 20. являются коэффициентами с фиксированными эффектами, = 0, 1,..., 8 и и являются случайными эффектами. означает начальный вес и является фиктивной переменной, представляющей тип программы. Для примера, - фиктивная переменная, представляющая тип программы B. Случайные эффекты и ошибка наблюдения имеют следующие предшествующие распределения:
Subject = nominal(Subject); Program = nominal(Program); D = dummyvar(Program); % Create dummy variables for Program X = [ones(120,1), InitialWeight, D(:,2:4), Week,... D(:,2).*Week, D(:,3).*Week, D(:,4).*Week]; Z = [ones(120,1), Week]; G = Subject;
Поскольку модель имеет точку пересечения, вам нужны только фиктивные переменные для программ B, C и D. Это также известно как 'reference'
СПОСОБ КОДИРОВАНИЯ ФИКТИВНЫХ ПЕРЕМЕННЫХ.
Подгонка модели с помощью fitlmematrix
с определенными матрицами проекта и сгруппированными переменными.
lme = fitlmematrix(X,y,Z,G,'FixedEffectPredictors',... {'Intercept','InitWeight','PrgB','PrgC','PrgD','Week','Week_PrgB','Week_PrgC','Week_PrgD'},... 'RandomEffectPredictors',{{'Intercept','Week'}},'RandomEffectGroups',{'Subject'})
lme = Linear mixed-effects model fit by ML Model information: Number of observations 120 Fixed effects coefficients 9 Random effects coefficients 40 Covariance parameters 4 Formula: Linear Mixed Formula with 10 predictors. Model fit statistics: AIC BIC LogLikelihood Deviance -22.981 13.257 24.49 -48.981 Fixed effects coefficients (95% CIs): Name Estimate SE tStat DF pValue {'Intercept' } 0.66105 0.25892 2.5531 111 0.012034 {'InitWeight'} 0.0031879 0.0013814 2.3078 111 0.022863 {'PrgB' } 0.36079 0.13139 2.746 111 0.0070394 {'PrgC' } -0.033263 0.13117 -0.25358 111 0.80029 {'PrgD' } 0.11317 0.13132 0.86175 111 0.39068 {'Week' } 0.1732 0.067454 2.5677 111 0.011567 {'Week_PrgB' } 0.038771 0.095394 0.40644 111 0.68521 {'Week_PrgC' } 0.030543 0.095394 0.32018 111 0.74944 {'Week_PrgD' } 0.033114 0.095394 0.34713 111 0.72915 Lower Upper 0.14798 1.1741 0.00045067 0.0059252 0.10044 0.62113 -0.29319 0.22666 -0.14706 0.3734 0.039536 0.30686 -0.15026 0.2278 -0.15849 0.21957 -0.15592 0.22214 Random effects covariance parameters (95% CIs): Group: Subject (20 Levels) Name1 Name2 Type Estimate {'Intercept'} {'Intercept'} {'std' } 0.18407 {'Week' } {'Intercept'} {'corr'} 0.66841 {'Week' } {'Week' } {'std' } 0.15033 Lower Upper 0.12281 0.27587 0.21076 0.88573 0.11004 0.20537 Group: Error Name Estimate Lower Upper {'Res Std'} 0.10261 0.087882 0.11981
Исследуйте таблицу коэффициентов фиксированных эффектов. Строка с меткой 'InitWeight'
имеет -значение 0,0228 и маркированная строка 'Week'
имеет -значение 0,0115. Они -значения указывают на значительные эффекты начальных весов субъектов и временного фактора в количестве потерянного веса. Потеря веса субъектов, которые находятся в программе B, значительно отличается по сравнению с потерей веса субъектов, которые находятся в программе A. Нижний и верхний пределы ковариационных параметров для случайных эффектов не включают нули, поэтому они кажутся значительными. Можно также проверить значимость случайных эффектов с помощью compare
способ.
Загрузите выборочные данные.
load flu
The flu
массив набора данных имеет Date
переменная и 10 переменных для предполагаемых показателей заболеваемости гриппом (в 9 различных областях, по оценкам поиска Google ®, плюс общенациональная оценка от Центров по контролю и профилактике заболеваний, CDC).
Чтобы соответствовать модели линейно-смешанных эффектов, где частота гриппа является реакциями, объедините девять столбцов, соответствующих областям, в массив, который имеет одну переменную отклика, FluRate
и номинальную переменную, Region
, общенациональная оценка WtdILI
, что показывает, из какой области каждая оценка, и сгруппированную переменную Date
.
flu2 = stack(flu,2:10,'NewDataVarName','FluRate',... 'IndVarName','Region'); flu2.Date = nominal(flu2.Date);
Задайте матрицы проекта для модели линейных смешанных эффектов случайного перехвата, где точка пересечения изменяется в зависимости от Date
. Соответствующая модель является
где является наблюдением для уровня от сгруппированной переменной Date
, является случайным эффектом для уровня сгруппированной переменной Date
, и - ошибка наблюдения для наблюдения . Случайный эффект имеет предшествующее распределение,
и термин ошибки имеет распределение,
y = flu2.FluRate; X = [ones(468,1) flu2.WtdILI]; Z = [ones(468,1)]; G = flu2.Date;
Подбор линейной модели смешанных эффектов.
lme = fitlmematrix(X,y,Z,G,'FixedEffectPredictors',{'Intercept','NationalRate'},... 'RandomEffectPredictors',{{'Intercept'}},'RandomEffectGroups',{'Date'})
lme = Linear mixed-effects model fit by ML Model information: Number of observations 468 Fixed effects coefficients 2 Random effects coefficients 52 Covariance parameters 2 Formula: y ~ Intercept + NationalRate + (Intercept | Date) Model fit statistics: AIC BIC LogLikelihood Deviance 286.24 302.83 -139.12 278.24 Fixed effects coefficients (95% CIs): Name Estimate SE tStat DF pValue {'Intercept' } 0.16385 0.057525 2.8484 466 0.0045885 {'NationalRate'} 0.7236 0.032219 22.459 466 3.0502e-76 Lower Upper 0.050813 0.27689 0.66028 0.78691 Random effects covariance parameters (95% CIs): Group: Date (52 Levels) Name1 Name2 Type Estimate Lower {'Intercept'} {'Intercept'} {'std'} 0.17146 0.13227 Upper 0.22226 Group: Error Name Estimate Lower Upper {'Res Std'} 0.30201 0.28217 0.32324
Доверительные пределы стандартного отклонения термина случайных эффектов , не включать нуль (0,13227, 0,22226), что указывает на то, что термин случайных эффектов значителен. Можно также проверить значимость случайных эффектов с помощью compare
способ.
Оценочное значение наблюдения является суммой значений фиксированных эффектов и значения случайного эффекта на уровне сгруппированной переменной, соответствующем этому наблюдению. Для примера предполагаемый уровень гриппа для наблюдения 28
где является лучшим линейным объективным предиктором (BLUP) случайных эффектов для точки пересечения. Вычислить это значение можно следующим образом.
beta = fixedEffects(lme); [~,~,STATS] = randomEffects(lme); % compute the random effects statistics STATS STATS.Level = nominal(STATS.Level); y_hat = beta(1) + beta(2)*flu2.WtdILI(28) + STATS.Estimate(STATS.Level=='10/30/2005')
y_hat = 1.4674
Вы можете просто отобразить подобранное значение с помощью fitted(lme)
способ.
F = fitted(lme); F(28)
ans = 1.4674
Загрузите выборочные данные.
load('shift.mat');
Данные показывают отклонения от целевой характеристики качества, измеренные по продуктам, которые пять операторов производят в три сдвигов: утреннюю, вечернюю и ночную. Это рандомизированный проект блока, где операторы являются блоками. Эксперимент предназначен для изучения влияния времени сдвига на эффективность. Показателем эффективности являются отклонения характеристик качества от целевого значения. Это моделируемые данные.
Задайте матрицы проекта для линейной модели смешанных эффектов со случайной точкой пересечения, сгруппированным по операторам, и сдвиньте как фиксированные эффекты. Используйте 'effects'
контрасты. 'effects'
контрасты означают, что сумма коэффициентов равна 0. Вам нужно создать две контрастные закодированные переменные в матрице проекта с фиксированными эффектами, X1
и X2
, где
Модель соответствует
где представляет наблюдения, и представляет операторов, = 1, 2,..., 15 и = 1, 2, ..., 5. Случайные эффекты и ошибка наблюдения имеют следующие распределения:
и
S = shift.Shift; X1 = (S=='Morning') - (S=='Night'); X2 = (S=='Evening') - (S=='Night'); X = [ones(15,1), X1, X2]; y = shift.QCDev; Z = ones(15,1); G = shift.Operator;
Подгонка линейной модели смешанных эффектов с помощью заданных матриц проекта и метода ограниченного максимального правдоподобия.
lme = fitlmematrix(X,y,Z,G,'FitMethod','REML','FixedEffectPredictors',.... {'Intercept','S_Morning','S_Evening'},'RandomEffectPredictors',{{'Intercept'}},... 'RandomEffectGroups',{'Operator'},'DummyVarCoding','effects')
lme = Linear mixed-effects model fit by REML Model information: Number of observations 15 Fixed effects coefficients 3 Random effects coefficients 5 Covariance parameters 2 Formula: y ~ Intercept + S_Morning + S_Evening + (Intercept | Operator) Model fit statistics: AIC BIC LogLikelihood Deviance 58.913 61.337 -24.456 48.913 Fixed effects coefficients (95% CIs): Name Estimate SE tStat DF pValue {'Intercept'} 3.6525 0.94109 3.8812 12 0.0021832 {'S_Morning'} -0.91973 0.31206 -2.9473 12 0.012206 {'S_Evening'} -0.53293 0.31206 -1.7078 12 0.11339 Lower Upper 1.6021 5.703 -1.5997 -0.23981 -1.2129 0.14699 Random effects covariance parameters (95% CIs): Group: Operator (5 Levels) Name1 Name2 Type Estimate Lower {'Intercept'} {'Intercept'} {'std'} 2.0457 0.98207 Upper 4.2612 Group: Error Name Estimate Lower Upper {'Res Std'} 0.85462 0.52357 1.395
Вычислите лучшие линейные объективные оценки случайных эффектов (BLUP).
B = randomEffects(lme)
B = 5×1
0.5775
1.1757
-2.1715
2.3655
-1.9472
Предполагаемое отклонение от целевых характеристик качества для третьего оператора, работающего в вечерний сдвиг,
Это значение можно также отобразить следующим образом.
F = fitted(lme); F(shift.Shift=='Evening' & shift.Operator=='3')
ans = 0.9481
Загрузите выборочные данные.
load carbig
Подгонка линейной модели смешанных эффектов для миль на галлон (MPG) с фиксированными эффектами для ускорения и лошадиной силы и некоррелированным случайным эффектом для точки пересечения и ускорения, сгруппированными по модельному году. Эта модель соответствует
с терминами случайных эффектов, имеющими следующие предыдущие распределения:
где представляет модельный год.
Сначала подготовьте матрицы проекта для подбора кривой линейной модели смешанных эффектов.
X = [ones(406,1) Acceleration Horsepower]; Z = {ones(406,1),Acceleration}; G = {Model_Year,Model_Year}; Model_Year = nominal(Model_Year);
Теперь подбирайте модель используя fitlmematrix
с определенными матрицами проекта и сгруппированными переменными.
lme = fitlmematrix(X,MPG,Z,G,'FixedEffectPredictors',.... {'Intercept','Acceleration','Horsepower'},'RandomEffectPredictors',... {{'Intercept'},{'Acceleration'}},'RandomEffectGroups',{'Model_Year','Model_Year'})
lme = Linear mixed-effects model fit by ML Model information: Number of observations 392 Fixed effects coefficients 3 Random effects coefficients 26 Covariance parameters 3 Formula: Linear Mixed Formula with 4 predictors. Model fit statistics: AIC BIC LogLikelihood Deviance 2194.5 2218.3 -1091.3 2182.5 Fixed effects coefficients (95% CIs): Name Estimate SE tStat DF {'Intercept' } 49.839 2.0518 24.291 389 {'Acceleration'} -0.58565 0.10846 -5.3995 389 {'Horsepower' } -0.16534 0.0071227 -23.213 389 pValue Lower Upper 5.6168e-80 45.806 53.873 1.1652e-07 -0.7989 -0.3724 1.9755e-75 -0.17934 -0.15133 Random effects covariance parameters (95% CIs): Group: Model_Year (13 Levels) Name1 Name2 Type Estimate Lower {'Intercept'} {'Intercept'} {'std'} 8.5771e-07 NaN Upper NaN Group: Model_Year (13 Levels) Name1 Name2 Type Estimate {'Acceleration'} {'Acceleration'} {'std'} 0.18783 Lower Upper 0.12523 0.28172 Group: Error Name Estimate Lower Upper {'Res Std'} 3.7258 3.4698 4.0007
Обратите внимание, что случайные эффекты ковариации параметры для точки пересечения и ускорения являются отдельными в отображение. Стандартное отклонение случайного эффекта для точки пересечения не кажется значительным.
Обновите модель с потенциально коррелированными случайными эффектами для точки пересечения и ускорения. В этом случае условия случайных эффектов имеют это предшествующее распределение
где представляет модельный год.
Во-первых, подготовьте матрицу проекта случайных эффектов и сгруппированную переменную.
Z = [ones(406,1) Acceleration]; G = Model_Year; lme = fitlmematrix(X,MPG,Z,G,'FixedEffectPredictors',.... {'Intercept','Acceleration','Horsepower'},'RandomEffectPredictors',... {{'Intercept','Acceleration'}},'RandomEffectGroups',{'Model_Year'})
lme = Linear mixed-effects model fit by ML Model information: Number of observations 392 Fixed effects coefficients 3 Random effects coefficients 26 Covariance parameters 4 Formula: Linear Mixed Formula with 4 predictors. Model fit statistics: AIC BIC LogLikelihood Deviance 2193.5 2221.3 -1089.7 2179.5 Fixed effects coefficients (95% CIs): Name Estimate SE tStat DF {'Intercept' } 50.133 2.2652 22.132 389 {'Acceleration'} -0.58327 0.13394 -4.3545 389 {'Horsepower' } -0.16954 0.0072609 -23.35 389 pValue Lower Upper 7.7727e-71 45.679 54.586 1.7075e-05 -0.84661 -0.31992 5.188e-76 -0.18382 -0.15527 Random effects covariance parameters (95% CIs): Group: Model_Year (13 Levels) Name1 Name2 Type Estimate {'Intercept' } {'Intercept' } {'std' } 3.3475 {'Acceleration'} {'Intercept' } {'corr'} -0.87971 {'Acceleration'} {'Acceleration'} {'std' } 0.33789 Lower Upper 1.2862 8.7119 -0.98501 -0.29675 0.1825 0.62558 Group: Error Name Estimate Lower Upper {'Res Std'} 3.6874 3.4298 3.9644
Обратите внимание, что ковариационные параметры случайных эффектов для точки пересечения и ускорения находятся вместе на отображении с сложением корреляции между точкой пересечения и ускорением. Доверительные интервалы для стандартных отклонений и корреляция между случайными эффектами для точки пересечения и ускорения не включают 0 с, поэтому они кажутся значительными. Можно сравнить эти две модели с помощью compare
способ.
Загрузите выборочные данные.
load('weight.mat');
weight
содержит данные продольного исследования, где 20 субъектам случайным образом назначены 4 программы упражнений, и их потеря веса регистрируется в течение шести 2-недельных периодов времени. Это моделируемые данные.
Определите Subject
и Program
как категориальные переменные.
Subject = nominal(Subject); Program = nominal(Program);
Создайте матрицы проекта для линейной модели смешанных эффектов с начальным весом, типом программы и неделей в качестве фиксированных эффектов.
D = dummyvar(Program); X = [ones(120,1), InitialWeight, D(:,2:4), Week]; Z = [ones(120,1) Week]; G = Subject;
Эта модель соответствует
где = 1, 2,..., 120, и = 1, 2, ..., 20.
являются коэффициентами с фиксированными эффектами, = 0, 1,..., 8 и и являются случайными эффектами. означает начальный вес и является фиктивной переменной, представляющей тип программы. Для примера, - фиктивная переменная, представляющая тип программы B. Случайные эффекты и ошибка наблюдения имеют следующие предшествующие распределения:
Подгонка модели с помощью fitlmematrix
с определенными матрицами проекта и сгруппированными переменными. Предположим, что повторные наблюдения, собранные по субъекту, имеют общее отклонение по диагоналям.
lme = fitlmematrix(X,y,Z,G,'FixedEffectPredictors',... {'Intercept','InitWeight','PrgB','PrgC','PrgD','Week'},... 'RandomEffectPredictors',{{'Intercept','Week'}},... 'RandomEffectGroups',{'Subject'},'CovariancePattern','Isotropic')
lme = Linear mixed-effects model fit by ML Model information: Number of observations 120 Fixed effects coefficients 6 Random effects coefficients 40 Covariance parameters 2 Formula: Linear Mixed Formula with 7 predictors. Model fit statistics: AIC BIC LogLikelihood Deviance -24.783 -2.483 20.391 -40.783 Fixed effects coefficients (95% CIs): Name Estimate SE tStat DF {'Intercept' } 0.4208 0.28169 1.4938 114 {'InitWeight'} 0.0045552 0.0015338 2.9699 114 {'PrgB' } 0.36993 0.12119 3.0525 114 {'PrgC' } -0.034009 0.1209 -0.28129 114 {'PrgD' } 0.121 0.12111 0.99911 114 {'Week' } 0.19881 0.037134 5.3538 114 pValue Lower Upper 0.13799 -0.13723 0.97883 0.0036324 0.0015168 0.0075935 0.0028242 0.12986 0.61 0.77899 -0.27351 0.2055 0.31986 -0.11891 0.36091 4.5191e-07 0.12525 0.27237 Random effects covariance parameters (95% CIs): Group: Subject (20 Levels) Name1 Name2 Type Estimate Lower {'Intercept'} {'Intercept'} {'std'} 0.16561 0.12896 Upper 0.21269 Group: Error Name Estimate Lower Upper {'Res Std'} 0.10272 0.088014 0.11987
X
- Матрица дизайна с фиксированными эффектамиМатрица разработки фиксированных эффектов, заданная как n -by - p матрица, где n - количество наблюдений, а p - количество переменных предиктора фиксированных эффектов. Каждая строка X
соответствует одному наблюдению и каждому столбцу X
соответствует одной переменной.
Типы данных: single
| double
y
- Значения откликаЗначения отклика, заданные как n -by-1 вектор, где n - количество наблюдений.
Типы данных: single
| double
Z
- проект случайных эффектовПроект случайных эффектов, заданный как любой из следующих.
Если существует один член в модели случайных эффектов, то Z
должна быть n -by - q матрицей, где n - количество наблюдений, а q - количество переменных в термине случайных эффектов.
Если существует R членов случайных эффектов, то Z
должен быть массивом ячеек с R длины. Каждая камера Z
содержит n -by q (r) матрицу
проекта Z{r}
, r = 1, 2,..., R, соответствующий каждому термину случайных эффектов. Здесь q (r) - количество членов случайных эффектов в r-й матрице проекта случайных эффектов, Z{r}
.
Типы данных: single
| double
| cell
G
- Сгруппированная переменная или переменныхСгруппированная переменная или переменных, заданная как одна из следующих.
Если существует один термин случайных эффектов, то G
должен быть вектором n -by-1, соответствующим одной сгруппированной переменной с M уровнями или группами.
G
может быть категориальным вектором, логическим вектором, числовым вектором, символьным массивом, строковыми массивами или массивом ячеек из векторов символов.
Если существует несколько членов случайных эффектов, то G
должен быть массивом ячеек с R длины. Каждая камера G
содержит сгруппированную переменную G{r}
, r = 1, 2,..., R, с M (r) уровнями.
G{r}
может быть категориальным вектором, логическим вектором, числовым вектором, символьным массивом, строковыми массивами или массивом ячеек из векторов символов.
Типы данных: categorical
| logical
| single
| double
| char
| string
| cell
Задайте необязательные разделенные разделенными запятой парами Name,Value
аргументы. Name
- имя аргумента и Value
- соответствующее значение. Name
должны находиться внутри кавычек. Можно задать несколько аргументов в виде пар имен и значений в любом порядке Name1,Value1,...,NameN,ValueN
.
'CovariancePattern','Diagonal','DummyVarCoding','full','Optimizer','fminunc'
задает ковариационный шаблон случайных эффектов с нулем off-диагональных элементов, создает фиктивную переменную для каждого уровня категориальной переменной и использует fminunc
алгоритм оптимизации.'FixedEffectPredictors'
- Имена столбцов в матрице проекта с фиксированными эффектами{'x1','x2',...,'xP'}
(по умолчанию) | строковые массивы или массив ячеек с длиной pИмена столбцов в матрице проекта с фиксированными эффектами X
, заданная как разделенная разделенными запятой парами, состоящая из 'FixedEffectPredictors'
и строковые массивы или массив ячеек с p длины.
Для примера, если у вас есть постоянный член и два предиктора, скажем TimeSpent
и Gender
, где Female
является базовым уровнем для Gender
в качестве фиксированных эффектов можно задать имена фиксированных эффектов следующим образом. Gender_Male
представляет переменную манекена, которую вы должны создать для категории Male
. Для этих переменных можно выбрать различные имена.
Пример: 'FixedEffectPredictors',{'Intercept','TimeSpent','Gender_Male'}
,
Типы данных: string
| cell
'RandomEffectPredictors'
- Имена столбцов в матрице проекта случайных эффектов или массиве ячеекИмена столбцов в матрице проекта случайных эффектов или массиве ячеек Z
, заданная как разделенная разделенными запятой парами, состоящая из 'RandomEffectPredictors'
и любое из следующих:
Массив строковых массивов или ячеек длины q при Z
является n -by q матрицей проекта. В этом случае значение по умолчанию является {'z1','z2',...,'zQ'}
.
Массив ячеек длины R, когда Z
- массив ячеек длины, R с каждым элементом Z{r}
длины q (r), r = 1, 2,..., R. В этом случае значение по умолчанию является {'z11','z12',...,'z1Q(1)'},...,{'zr1','zr2',...,'zrQ(r)'}
.
Например, предположим, что у вас есть коррелированные случайные эффекты для точки пересечения и переменной с именем Acceleration
. Затем можно задать имена предикторов случайных эффектов следующим образом.
Пример: 'RandomEffectPredictors',{'Intercept','Acceleration'}
Если у вас есть два условия случайных эффектов, один для точки пересечения и переменной Acceleration
сгруппирован по переменным g1
, и второй для точки пересечения, сгруппированный по переменной g2
, затем вы задаете имена предикторов случайных эффектов следующим образом.
Пример: 'RandomEffectPredictors',{{'Intercept','Acceleration'},{'Intercept'}}
Типы данных: string
| cell
'ResponseVarName'
- Имя переменной отклика'y'
(по умолчанию) | символьный вектор | строковый скалярИмя переменной отклика, заданное как разделенная разделенными запятой парами, состоящая из 'ResponseVarName'
и вектор символов или строковый скаляр.
Для примера, если ваше имя переменной ответа score
, затем можно задать его следующим образом.
Пример: 'ResponseVarName','score'
Типы данных: char
| string
'RandomEffectGroups'
- Имена сгруппированных переменных случайных эффектов'g'
или {'g1','g2',...,'gR'}
(по умолчанию) | вектор символов | строковый скаляр | строковые массивы | массив ячеек из векторов символовИмена сгруппированных переменных случайных эффектов, заданные как разделенная разделенными запятой парами 'RandomEffectGroups'
и любое из следующих:
Вектор символов или строковый скаляр - Если существует только один термин случайных эффектов, то есть, если G
является вектором, затем значение 'RandomEffectGroups'
- имя сгруппированной переменной G
. Значение по умолчанию является 'g'
.
Строковые массивы или массив ячеек векторов символов - если существует несколько членов случайных эффектов, то есть если G
- массив ячеек длиной R, затем значение 'RandomEffectGroups'
- строковые массивы или массив ячеек длиной R, где каждый элемент является именем для сгруппированной переменной G{r}
. Значение по умолчанию является {'g1','g2',...,'gR'}
.
Для примера, если у вас есть два условия случайных эффектов, z1
и z2
, сгруппированные по сгруппированным переменным sex
и subject
, затем можно задать имена сгруппированных переменных следующим образом.
Пример: 'RandomEffectGroups',{'sex','subject'}
Типы данных: char
| string
| cell
'CovariancePattern'
- Шаблон ковариационной матрицы'FullCholesky'
(по умолчанию) | вектор символов | строковый скаляр | квадратная симметричная логическая матрица | строковые массивы | массив ячеек из векторов символов или логических матрицШаблон ковариационной матрицы случайных эффектов, заданный как разделенная разделенными запятой парами, состоящая из 'CovariancePattern'
и вектор символов, строковый скаляр, квадратная симметричная логическая матрица, строковые массивы или массив ячеек из векторов символов или логических матриц.
Если существует R членов случайных эффектов, то значение 'CovariancePattern'
должен быть массивом строк или массивом ячеек с R длины, где каждый r элемента массива задает шаблон ковариационной матрицы вектора случайных эффектов, сопоставленного с r-м термином случайных эффектов. Далее приводятся опции для каждого элемента.
'FullCholesky' | По умолчанию. Полная ковариационная матрица с использованием параметризации Холецкого. fitlme оценивает все элементы ковариационной матрицы. |
'Full' | Полная ковариационная матрица, с помощью логарифмической параметризации. fitlme оценивает все элементы ковариационной матрицы. |
'Diagonal' |
Диагональная ковариационная матрица. То есть, off-диагональные элементы ковариационной матрицы ограничены, чтобы быть 0. |
'Isotropic' |
Диагональная ковариационная матрица с равными отклонениями. То есть, off-диагональные элементы ковариационной матрицы ограничены, чтобы быть 0, и диагональные элементы ограничены, чтобы быть равными. Например, если существует три условия случайных эффектов с изотропной ковариационной структурой, эта ковариационная матрица выглядит как где2b - общее отклонение членов случайных эффектов. |
'CompSymm' |
Составная структура симметрии. То есть общее отклонение по диагоналям и равная корреляция между всеми случайными эффектами. Для примера, если существует три условия случайных эффектов с матрицей ковариации, имеющей составную структуру симметрии, эта ковариация матрица выглядит как где2b1 является общим отклонением членов random-эффектов, а, b1, b2 является общим ковариацией между любыми двумя терминами random-эффектов. |
PAT | Квадратная симметричная логическая матрица. Если 'CovariancePattern' определяется матрицей PAT , и если PAT(a,b) = false , затем (a,b) элемент соответствующей ковариационной матрицы ограничен равным 0. |
Пример: 'CovariancePattern','Diagonal'
Пример: 'CovariancePattern',{'Full','Diagonal'}
Типы данных: char
| string
| logical
| cell
'FitMethod'
- Метод оценки параметров'ML'
(по умолчанию) | 'REML'
Метод оценки параметров линейной модели смешанных эффектов, заданный как разделенная разделенными запятой парами, состоящая из 'FitMethod'
и любое из следующих.
'ML' | По умолчанию. Оценка максимальной вероятности |
'REML' | Ограниченная оценка максимальной вероятности |
Пример: 'FitMethod','REML'
'Weights'
- Веса наблюденийВеса наблюдений, заданные как разделенная разделенными запятой парами, состоящая из 'Weights'
и вектор длины n, где n - количество наблюдений.
Типы данных: single
| double
'Exclude'
- Индексы для строк, которые нужно исключитьNaNs
(по умолчанию) | вектор целого числа или логических значенийИндексы для строк, чтобы исключить из модели линейных смешанных эффектов в данных, заданные как разделенная разделенными запятой парами, состоящая из 'Exclude'
и вектор с целым числом или логическими значениями.
Для примера можно исключить 13-ю и 67-ю строки из подгонки следующим образом.
Пример: 'Exclude',[13,67]
Типы данных: single
| double
| logical
'DummyVarCoding'
- Кодирование для использования с фиктивными переменными'reference'
(по умолчанию) | 'effects'
| 'full'
Кодирование для использования с фиктивными переменными, созданными из категориальных переменных, заданное как разделенная разделенными запятой парами, состоящая из 'DummyVarCoding'
и одна из переменных в этой таблице.
Значение | Описание |
---|---|
'reference' (по умолчанию) | fitlmematrix создает фиктивные переменные с группой ссылки. Эта схема рассматривает первую категорию как ссылочную группу и создает на одну меньше фиктивных переменных, чем количество категорий. Порядок категорий категорийной переменной можно проверить при помощи categories function, и изменить порядок при помощи reordercats функция. |
'effects' | fitlmematrix создает фиктивные переменные, используя кодирование эффектов. Эта схема использует -1, чтобы представлять последнюю категорию. Эта схема создает меньше фиктивных переменных, чем количество категорий. |
'full' | fitlmematrix создает полные фиктивные переменные. Эта схема создает по одной фиктивной переменной для каждой категории. |
Для получения дополнительной информации о создании переменных манекена, смотрите Автоматическое создание переменных манекена.
Пример: 'DummyVarCoding','effects'
'Optimizer'
- Алгоритм оптимизации'quasinewton'
(по умолчанию) | 'fminunc'
Алгоритм оптимизации, заданный как разделенная разделенными запятой парами, состоящая из 'Optimizer'
и любое из следующих.
'quasinewton' | По умолчанию. Использует оптимизатор на основе доверительной области квази-Ньютона. Измените опции алгоритма, используя statset('LinearMixedModel') . Если вы не задаете опции, то LinearMixedModel использует опции по умолчанию statset('LinearMixedModel') . |
'fminunc' | Чтобы задать эту опцию, необходимо иметь Optimization Toolbox™. Измените опции алгоритма, используя optimoptions('fminunc') . Если вы не задаете опции, то LinearMixedModel использует опции по умолчанию optimoptions('fminunc') с 'Algorithm' установлено на 'quasi-newton' . |
Пример: 'Optimizer','fminunc'
'OptimizerOptions'
- Опции для алгоритма оптимизацииstatset
| объект, возвращенный optimoptions
Опции алгоритма оптимизации, заданные как разделенная разделенными запятой парами, состоящая из 'OptimizerOptions'
и структуру, возвращаемую statset('LinearMixedModel')
или объект, возвращенный optimoptions('fminunc')
.
Если 'Optimizer'
является 'fminunc'
, затем используйте optimoptions('fminunc')
для изменения опций алгоритма оптимизации. См. optimoptions
для опций 'fminunc'
использует. Если 'Optimizer'
является 'fminunc'
и вы не поставляете 'OptimizerOptions'
, затем значение по умолчанию для LinearMixedModel
- опции по умолчанию, созданные optimoptions('fminunc')
с 'Algorithm'
установлено на 'quasi-newton'
.
Если 'Optimizer'
является 'quasinewton'
, затем используйте statset('LinearMixedModel')
для изменения параметров оптимизации. Если вы не меняете параметры оптимизации, то LinearMixedModel
использует опции по умолчанию, созданные statset('LinearMixedModel')
:
The 'quasinewton'
оптимизатор использует следующие поля в структуре, созданной statset('LinearMixedModel')
.
TolFun
- Относительная погрешность на градиент целевой функции1e-6
(по умолчанию) | положительное скалярное значениеОтносительная погрешность на градиент целевой функции, заданный как положительная скалярная величина значение.
TolX
- Абсолютная погрешность по размеру шага1e-12
(по умолчанию) | положительное скалярное значениеАбсолютная погрешность на размер шага, заданный как положительная скалярная величина значение.
MaxIter
- Максимально допустимое количество итераций10000
(по умолчанию) | положительное скалярное значениеМаксимально допустимое количество итераций, заданное как положительная скалярная величина значение.
Display
- Level of display'off'
(по умолчанию) | 'iter'
| 'final'
Level of display, заданный как один из 'off'
, 'iter'
, или 'final'
.
'StartMethod'
- Метод для запуска итерационной оптимизации'default'
(по умолчанию) | 'random'
Метод для запуска итерационной оптимизации, заданный как разделенная разделенными запятой парами, состоящая из 'StartMethod'
и любое из следующих.
Значение | Описание |
---|---|
'default' | Внутренне определенное значение по умолчанию |
'random' | Случайное начальное значение |
Пример: 'StartMethod','random'
'Verbose'
- Индикатор для отображения процесса оптимизации на экранеfalse
(по умолчанию) | true
Индикатор для отображения процесса оптимизации на экране, заданный как разделенная разделенными запятой парами, состоящая из 'Verbose'
и любой из них false
или true
. По умолчанию это false
.
Настройка для 'Verbose'
переопределяет поле 'Display'
в 'OptimizerOptions'
.
Пример: 'Verbose',true
'CheckHessian'
- Индикатор для проверки положительной определенности Гессианаfalse
(по умолчанию) | true
Индикатор для проверки положительной определенности Гессиана целевой функции относительно неограниченных параметров при сходимости, заданный как разделенная разделенными запятой парами, состоящая из 'CheckHessian'
и любой из них false
или true
. По умолчанию это false
.
Задайте 'CheckHessian'
как true
чтобы проверить оптимальность решения или определить, является ли модель избыточно параметеризированной в количестве ковариационных параметров.
Пример: 'CheckHessian',true
lme
- Линейная модель смешанных эффектовLinearMixedModel
объектЛинейная модель смешанных эффектов, возвращенная как LinearMixedModel
объект.
Одним из предположений линейных моделей смешанных эффектов является то, что случайные эффекты имеют следующее предшествующее распределение.
где D q q симметричной и положительной полуопределенной матрицей, параметризовавшей вектором компонента отклонения θ, q - количество переменных в термине случайных эффектов и σ2 - отклонение ошибки наблюдения. Поскольку ковариация матрица случайных эффектов, D, симметрична, она имеет q (q + 1 )/2 свободных параметров. Предположим L что это нижний треугольный фактор Холецкого D (θ), такой что
тогда q * (q +1)/2-by-1 добровольный вектор параметра θ сформирован из элементов в более низкой треугольной части L.
Для примера, если
тогда
Когда диагональные элементы L в параметризации Холецкого ограничены положительными, то решение для L уникально. Параметризация Логея-Холецкого аналогична параметризации Холецкого, за исключением того, что логарифм диагональных элементов L используются, чтобы гарантировать уникальную параметризацию.
Например, для примера 3 на 3 в параметризации Холецкого, обеспечивающего соблюдение L ii ≥ 0 ,
Можно также подгонять линейную модель смешанных эффектов с помощью fitlme(tbl,formula)
, где tbl
- таблица или массив набора данных, содержащий ответ y
, переменные предиктора X
, и сгруппированные переменные, и formula
имеет вид 'y ~ fixed + (random1|g1) + ... + (randomR|gR)'
.
У вас есть измененная версия этого примера. Вы хотите открыть этот пример с вашими правками?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.