Класс: LinearMixedModel
Оценки случайных эффектов и связанной статистики
B = randomEffects(lme)
[B,Bnames]
= randomEffects(lme)
[B,Bnames,stats]
= randomEffects(lme)
[B,Bnames,stats]
= randomEffects(lme,Name,Value)
lme
— Линейная модель смешанных эффектовLinearMixedModel
Линейная модель смешанных эффектов, заданная как объект LinearMixedModel
, созданный с помощью fitlme
или fitlmematrix
.
Укажите необязательные аргументы в виде пар ""имя, значение"", разделенных запятыми.
Имя (Name) — это имя аргумента, а значение (Value) — соответствующее значение.
Name
должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.
\alpha
Уровень значенияУровень значения, заданный как пара, разделенная запятой, состоящая из 'Alpha'
и скалярного значения в области значений от 0 до 1. Для значения α, доверительный уровень равняется 100* (1–α) %.
Например, для 99% доверительных интервалов, можно задать доверительный уровень можно следующим образом.
Пример: 'Alpha',0.01
Типы данных: single | double
'DFMethod'
— Метод для вычисления аппроксимированных степеней свободы'residual'
(значение по умолчанию) | 'satterthwaite'
| 'none'
Метод для вычисления аппроксимированных степеней свободы для t - статистические данные, которые тестируют коэффициенты случайных эффектов против 0, заданный как пара, разделенная запятой, состоящая из 'DFMethod'
и одно из следующих.
'residual' | Значение по умолчанию. Степени свободы приняты, чтобы быть постоянными и равными n – p, где n является количеством наблюдений, и p является количеством фиксированных эффектов. |
'satterthwaite' | Приближение Satterthwaite. |
'none' | Все степени свободы установлены в бесконечность. |
Например, можно задать приближение Satterthwaite можно следующим образом.
Пример: 'DFMethod','satterthwaite'
B
Оцененный лучше всего линейные несмещенные предикторы случайных эффектовОцененный лучше всего линейные несмещенные предикторы случайных эффектов линейной модели lme
смешанных эффектов, возвращенной как вектор-столбец.
Предположим, что lme
имеет группирующие переменные R g1, g2..., gR, с уровнями m 1, m 2..., m R, соответственно. Также предположите q 1, q 2..., q R длины векторов случайных эффектов, которые сопоставлены с g1, g2..., gR, соответственно. Затем B
является вектор-столбцом длины q 1*m1 + q 2*m2 +... + q R *mR.
randomEffects
создает B
путем конкатенации лучших линейных несмещенных предикторов векторов случайных эффектов, соответствующих каждому уровню каждой группирующей переменной как [g1level1; g1level2; ...; g1levelm1; g2level1; g2level2; ...; g2levelm2; ...; gRlevel1; gRlevel2; ...; gRlevelmR]'
.
Bnames
— Имена коэффициентов случайных эффектовИмена коэффициентов случайных эффектов в B
, возвращенном как таблица.
статистика
Оценки случайных эффектов BLUPs и связанная статистикаОценки случайных эффектов BLUPs и связанная статистика, возвращенная как массив набора данных, который ссорится для каждого из фиксированных эффектов и одного столбца для каждых из следующих статистических данных.
Group | Группирующая переменная сопоставлена со случайным эффектом |
Level | Уровень в группирующей переменной, соответствующей случайному эффекту |
Name | Имя коэффициента случайного эффекта |
Estimate | Лучше всего линейный несмещенный предиктор (BLUP) случайного эффекта |
SEPred | Стандартная погрешность оценки (BLUP минус случайный эффект) |
tStat | t- для теста, что случайный эффект является нулем |
DF | Предполагаемые степени свободы для t - статистическая величина |
pValue | p - значение для t - статистическая величина |
Lower | Нижний предел 95%-го доверительного интервала для случайного эффекта |
Upper | Верхний предел 95%-го доверительного интервала для случайного эффекта |
Загрузите выборочные данные.
load carbig
Соответствуйте линейной модели смешанных эффектов для миль на галлон (MPG) с фиксированными эффектами для ускорения и лошадиной силы, и потенциально коррелировал случайные эффекты для прерывания и ускорения, сгруппированного модельным годом. Во-первых, храните данные в таблице.
tbl = table(Acceleration,Horsepower,Model_Year,MPG);
Соответствуйте модели.
lme = fitlme(tbl, 'MPG ~ Acceleration + Horsepower + (Acceleration|Model_Year)');
Вычислите BLUPs коэффициентов случайных эффектов и отобразите имена соответствующих случайных эффектов.
[B,Bnames] = randomEffects(lme)
B = 26×1
3.1270
-0.2426
-1.6532
-0.0086
1.2075
-0.2179
4.4107
-0.4887
-1.3103
-0.0208
⋮
Bnames=26×3 table
Group Level Name
____________ _____ ______________
'Model_Year' '70' '(Intercept)'
'Model_Year' '70' 'Acceleration'
'Model_Year' '71' '(Intercept)'
'Model_Year' '71' 'Acceleration'
'Model_Year' '72' '(Intercept)'
'Model_Year' '72' 'Acceleration'
'Model_Year' '73' '(Intercept)'
'Model_Year' '73' 'Acceleration'
'Model_Year' '74' '(Intercept)'
'Model_Year' '74' 'Acceleration'
'Model_Year' '75' '(Intercept)'
'Model_Year' '75' 'Acceleration'
'Model_Year' '76' '(Intercept)'
'Model_Year' '76' 'Acceleration'
'Model_Year' '77' '(Intercept)'
'Model_Year' '77' 'Acceleration'
⋮
Поскольку прерывание и ускорение имеют потенциально коррелируемые случайные эффекты, сгруппированные модельным годом автомобилей, randomEffects
создает отдельную строку для прерывания и ускорения на каждом уровне группирующей переменной.
Вычислите параметры ковариации случайных эффектов.
[~,~,stats] = covarianceParameters(lme)
stats = 2x1 cell array
{3x7 classreg.regr.lmeutils.titleddataset}
{1x5 classreg.regr.lmeutils.titleddataset}
stats{1}
ans = Covariance Type: FullCholesky Group Name1 Name2 Type Model_Year '(Intercept)' '(Intercept)' 'std' Model_Year 'Acceleration' '(Intercept)' 'corr' Model_Year 'Acceleration' 'Acceleration' 'std' Estimate Lower Upper 3.3475 1.2862 8.7119 -0.87971 -0.98501 -0.29676 0.33789 0.1825 0.62558
Значение корреляции предлагает, чтобы случайные эффекты казались негативно коррелируемыми. Постройте случайные эффекты для прерывания по сравнению с ускорением, чтобы подтвердить это.
plot(B(1:2:end),B(2:2:end),'r*')
Загрузите выборочные данные.
load(fullfile(matlabroot,'examples','stats','fertilizer.mat'));
Массив набора данных включает данные из эксперимента графика разделения, где почва разделена на три блока на основе типа грунта: песчаный, илистый, и глинистый. Каждый блок разделен на пять графиков, где пять различных типов томатных объектов (вишня, семейная реликвия, виноград, виноградная лоза и слива) случайным образом присвоены этим графикам. Томатные объекты в графиках затем разделены на подграфики, где каждый подграфик обработан одним из четырех удобрений. Это - моделируемые данные.
Храните данные в массиве набора данных под названием ds
, практически, и задайте Tomato
, Soil
и Fertilizer
как категориальные переменные.
ds = fertilizer; ds.Tomato = nominal(ds.Tomato); ds.Soil = nominal(ds.Soil); ds.Fertilizer = nominal(ds.Fertilizer);
Соответствуйте линейной модели смешанных эффектов, где Fertilizer
и Tomato
являются переменными фиксированных эффектов, и средний урожай отличается блоком (тип грунта) и графики в блоках (томатные типы в типах грунта) независимо.
lme = fitlme(ds,'Yield ~ Fertilizer * Tomato + (1|Soil) + (1|Soil:Tomato)');
Вычислите BLUPs и связанную статистику для случайных эффектов.
[~,~,stats] = randomEffects(lme)
stats = Random effect coefficients: DFMethod = 'Residual', Alpha = 0.05 Group Level Name Estimate 'Soil' 'Loamy' '(Intercept)' 1.0061 'Soil' 'Sandy' '(Intercept)' -1.5236 'Soil' 'Silty' '(Intercept)' 0.51744 'Soil:Tomato' 'Loamy Cherry' '(Intercept)' 12.46 'Soil:Tomato' 'Loamy Grape' '(Intercept)' -2.6429 'Soil:Tomato' 'Loamy Heirloom' '(Intercept)' 16.681 'Soil:Tomato' 'Loamy Plum' '(Intercept)' -5.0172 'Soil:Tomato' 'Loamy Vine' '(Intercept)' -4.6874 'Soil:Tomato' 'Sandy Cherry' '(Intercept)' -17.393 'Soil:Tomato' 'Sandy Grape' '(Intercept)' -7.3679 'Soil:Tomato' 'Sandy Heirloom' '(Intercept)' -8.621 'Soil:Tomato' 'Sandy Plum' '(Intercept)' 7.669 'Soil:Tomato' 'Sandy Vine' '(Intercept)' 0.28246 'Soil:Tomato' 'Silty Cherry' '(Intercept)' 4.9326 'Soil:Tomato' 'Silty Grape' '(Intercept)' 10.011 'Soil:Tomato' 'Silty Heirloom' '(Intercept)' -8.0599 'Soil:Tomato' 'Silty Plum' '(Intercept)' -2.6519 'Soil:Tomato' 'Silty Vine' '(Intercept)' 4.405 SEPred tStat DF pValue Lower Upper 2.3374 0.43044 40 0.66918 -3.718 5.7303 2.3374 -0.65181 40 0.51825 -6.2477 3.2006 2.3374 0.22137 40 0.82593 -4.2067 5.2416 7.1765 1.7362 40 0.090224 -2.0443 26.964 7.1765 -0.36827 40 0.71461 -17.147 11.861 7.1765 2.3244 40 0.025269 2.1766 31.185 7.1765 -0.69911 40 0.48853 -19.522 9.4872 7.1765 -0.65316 40 0.51739 -19.192 9.8169 7.1765 -2.4235 40 0.019987 -31.897 -2.8882 7.1765 -1.0267 40 0.31075 -21.872 7.1364 7.1765 -1.2013 40 0.23671 -23.125 5.8833 7.1765 1.0686 40 0.29165 -6.8353 22.173 7.1765 0.039359 40 0.9688 -14.222 14.787 7.1765 0.68732 40 0.49585 -9.5718 19.437 7.1765 1.3949 40 0.17073 -4.4935 24.515 7.1765 -1.1231 40 0.2681 -22.564 6.4444 7.1765 -0.36952 40 0.71369 -17.156 11.852 7.1765 0.6138 40 0.54282 -10.099 18.909
Первые три строки содержат оценки случайных эффектов и статистику для этих трех уровней, Loamy
, Sandy
и Silty
группирующей переменной Soil
. Соответствие - значения 0.66918, 0.51825, и 0.82593 указывают, что эти случайные эффекты не существенно отличаются от 0. Следующие 15 строк включают BLUPS оценок случайных эффектов для прерывания, сгруппированного переменной Tomato, вложенной в Почве, т.е. взаимодействии Tomato
и Soil
.
Загрузите выборочные данные.
load shift
Соответствуйте линейной модели смешанных эффектов случайным прерыванием, сгруппированным оператором, чтобы оценить, если существует значительная разница в производительности согласно времени сдвига. Используйте ограниченный метод максимального правдоподобия.
lme = fitlme(shift,'QCDev ~ Shift + (1|Operator)');
Вычислите 99% доверительных интервалов для случайных эффектов с помощью опции невязок, чтобы вычислить степени свободы. Это - метод по умолчанию.
[~,~,stats] = randomEffects(lme,'Alpha',0.01)
stats = Random effect coefficients: DFMethod = 'Residual', Alpha = 0.01 Group Level Name Estimate SEPred 'Operator' '1' '(Intercept)' 0.57753 0.90378 'Operator' '2' '(Intercept)' 1.1757 0.90378 'Operator' '3' '(Intercept)' -2.1715 0.90378 'Operator' '4' '(Intercept)' 2.3655 0.90378 'Operator' '5' '(Intercept)' -1.9472 0.90378 tStat DF pValue Lower Upper 0.63902 12 0.53482 -2.1831 3.3382 1.3009 12 0.21772 -1.5849 3.9364 -2.4027 12 0.033352 -4.9322 0.58909 2.6174 12 0.022494 -0.39511 5.1261 -2.1546 12 0.052216 -4.7079 0.81337
Вычислите 99% доверительных интервалов для случайных эффектов с помощью приближения Satterthwaite, чтобы вычислить степени свободы.
[~,~,stats] = randomEffects(lme,'DFMethod','satterthwaite','Alpha',0.01)
stats = Random effect coefficients: DFMethod = 'Satterthwaite', Alpha = 0.01 Group Level Name Estimate SEPred 'Operator' '1' '(Intercept)' 0.57753 0.90378 'Operator' '2' '(Intercept)' 1.1757 0.90378 'Operator' '3' '(Intercept)' -2.1715 0.90378 'Operator' '4' '(Intercept)' 2.3655 0.90378 'Operator' '5' '(Intercept)' -1.9472 0.90378 tStat DF pValue Lower Upper 0.63902 6.4253 0.5449 -2.684 3.839 1.3009 6.4253 0.23799 -2.0858 4.4372 -2.4027 6.4253 0.050386 -5.433 1.09 2.6174 6.4253 0.037302 -0.89598 5.627 -2.1546 6.4253 0.071626 -5.2087 1.3142
Метод Satterhwaite обычно производит меньшие значения для степеней свободы (DF
), который приводит к большим p-значениям (pValue
) и большим доверительным интервалам (Lower
и Upper
) для оценок случайных эффектов.
LinearMixedModel
| coefCI
| coefTest
| fitlme
| fixedEffects
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.