Класс: Модель МР
Анализ дисперсии для эффектов между субъектами
rm - Модель повторных измеренийRepeatedMeasuresModel объектМодель повторных измерений, возвращенная как RepeatedMeasuresModel объект.
Свойства и методы этого объекта см. в разделе RepeatedMeasuresModel.
WM - Внутриобъектная модель'separatemeans' (по умолчанию) | 'orthogonalcontrasts' | символьный вектор или строковый скаляр, определяющий спецификацию модели | матрица r-by-nc, задающая контрасты ncМодель внутри субъекта, заданная как одна из следующих:
'separatemeans' - Ответ представляет собой среднее значение повторных измерений (среднее значение по модели внутри субъекта).
'orthogonalcontrasts' - Это справедливо, когда модель внутри субъекта имеет один числовой коэффициент T. Отклики - это среднее значение, наклон центрированного T, и, в общем случае, все ортогональные контрасты для многочлена вплоть до T ^ (p-1), где p - количество строк в модели внутри субъекта.anova умножается Y, ответ, используемый в модели повторных измерений rm ортогональными контрастами и использует столбцы результирующей матрицы произведения в качестве откликов.
anova вычисляет ортогональные контрасты для Т, используя коэффициент Q QR-факторизации матрицы Вандермонда.
Вектор символов или строковый скаляр, определяющий спецификацию модели в факторах внутри субъекта. Ответы определяются терминами в этой модели. anova умножает на Y матрицу отклика, используемую в модели повторных измерений rm по терминам модели и использует столбцы результата в качестве ответов.
Например, если существует коэффициент Time и 'Time' - спецификация модели, затем anova использует два члена, константу и незацентрированный член Time. Значение по умолчанию: '1' для выполнения среднего ответа.
Матрица r-by-nc, C, задающая nc контрасты среди r повторных измерений. Если Y представляет матрицу повторных измерений, используемую в модели повторных измерений rm, то выход tbl содержит отдельный анализ дисперсии для каждого столбца Y * C.
anova таблица содержит отдельный одномерный анализ результатов дисперсии для каждого ответа.
Пример: 'WithinModel','Time'
Пример: 'WithinModel','orthogonalcontrasts'
anovatbl - Результаты дисперсионного анализаРезультаты анализа дисперсии для эффектов между субъектами, возвращенные в виде таблицы. Это включает все термины в модели между субъектами и следующие столбцы.
| Имя столбца | Определение |
|---|---|
Within | Внутриобъектовые факторы |
Between | Факторы между субъектами |
SumSq | Сумма квадратов |
DF | Степени свободы |
MeanSq | Среднеквадратичная ошибка |
F | F-статистика |
pValue | p-значение, соответствующее F-статистике |
Загрузите образцы данных.
load fisheririsВектор столбца species состоит из цветков радужки трёх различных видов: сетозы, версиколора и виргиники. Двойная матрица meas состоит из четырёх видов измерений на цветках: длина и ширина чашелистиков и лепестков в сантиметрах соответственно.
Храните данные в табличном массиве.
t = table(species,meas(:,1),meas(:,2),meas(:,3),meas(:,4),... 'VariableNames',{'species','meas1','meas2','meas3','meas4'}); Meas = dataset([1 2 3 4]','VarNames',{'Measurements'});
Подгоните модель повторных измерений, где измерения являются откликами, а вид является предикторной переменной.
rm = fitrm(t,'meas1-meas4~species','WithinDesign',Meas);
Выполните анализ дисперсии.
anova(rm)
ans=3×7 table
Within Between SumSq DF MeanSq F pValue
________ ________ ______ ___ _______ ______ ___________
Constant constant 7201.7 1 7201.7 19650 2.0735e-158
Constant species 309.61 2 154.8 422.39 1.1517e-61
Constant Error 53.875 147 0.36649
Имеется 150 наблюдений и 3 вида. Степени свободы для видов 3 - 1 = 2, а для ошибки 150 - 3 = 147. Небольшое значение p 1,1517e-61 указывает на то, что измерения значительно различаются в зависимости от вида.
Загрузите данные панели образца.
load('panelData.mat');Массив наборов данных, panelData, содержит ежегодные наблюдения по восьми городам в течение 6 лет. Первая переменная, Growth, измеряет экономический рост (переменная ответа). Вторая и третья переменные - это показатели города и года соответственно. Последняя переменная, Employ, измеряет занятость (переменная предиктора). Это смоделированные данные.
Сохраните данные в массиве таблиц и определите город как номинальную переменную.
t = table(panelData.Growth,panelData.City,panelData.Year,... 'VariableNames',{'Growth','City','Year'});
Преобразуйте данные в соответствующий формат для выполнения повторного анализа измерений.
t = unstack(t,'Growth','Year','NewDataVariableNames',... {'year1','year2','year3','year4','year5','year6'});
Добавить средний уровень занятости за эти годы в качестве прогнозирующей переменной в таблицу t.
t(:,8) = table(grpstats(panelData.Employ,panelData.City));
t.Properties.VariableNames{'Var8'} = 'meanEmploy';Определите переменную «внутри субъектов».
Year = [1 2 3 4 5 6]';
Подходите под модель повторяющихся показателей, где показатели роста за 6 лет являются ответами, а средняя занятость является прогнозирующей переменной.
rm = fitrm(t,'year1-year6 ~ meanEmploy','WithinDesign',Year);
Выполните анализ дисперсии.
anovatbl = anova(rm,'WithinModel',Year)anovatbl=3×7 table
Within Between SumSq DF MeanSq F pValue
_________ __________ __________ __ __________ ________ _________
Contrast1 constant 588.17 1 588.17 0.038495 0.85093
Contrast1 meanEmploy 3.7064e+05 1 3.7064e+05 24.258 0.0026428
Contrast1 Error 91675 6 15279
Загрузите образцы данных.
load('longitudinalData.mat');Матрица Y содержит данные ответа для 16 человек. Ответ представляет собой уровень лекарственного средства в крови, измеренный в пять моментов времени (время = 0, 2, 4, 6 и 8). Каждая строка Y соответствует отдельному объекту, и каждый столбец соответствует временному моменту. Первые восемь субъектов - женщины, а вторые восемь субъектов - мужчины. Это смоделированные данные.
Определите переменную, в которой хранится гендерная информация.
Gender = ['F' 'F' 'F' 'F' 'F' 'F' 'F' 'F' 'M' 'M' 'M' 'M' 'M' 'M' 'M' 'M']';
Сохраните данные в нужном формате массива таблиц, чтобы выполнить повторный анализ измерений.
t = table(Gender,Y(:,1),Y(:,2),Y(:,3),Y(:,4),Y(:,5),... 'VariableNames',{'Gender','t0','t2','t4','t6','t8'});
Определите переменную «внутри субъектов».
Time = [0 2 4 6 8]';
Подгоните модель повторных измерений, где уровни в крови - это ответы, а пол - предикторная переменная.
rm = fitrm(t,'t0-t8 ~ Gender','WithinDesign',Time);
Выполните анализ дисперсии.
anovatbl = anova(rm)
anovatbl=3×7 table
Within Between SumSq DF MeanSq F pValue
________ ________ ______ __ ______ ______ __________
Constant constant 54702 1 54702 1079.2 1.1897e-14
Constant Gender 2251.7 1 2251.7 44.425 1.0693e-05
Constant Error 709.6 14 50.685
Существует 2 пола и 16 наблюдений, поэтому степени свободы для пола (2 - 1) = 1 и для ошибки это (16 - 2) * (2 - 1) = 14. p-значение 1.0693e-05 указывает на значительное влияние пола на артериальное давление.
Повторите анализ дисперсии с использованием ортогональных контрастов.
anovatbl = anova(rm,'WithinModel','orthogonalcontrasts')
anovatbl=15×7 table
Within Between SumSq DF MeanSq F pValue
________ ________ __________ __ __________ __________ __________
Constant constant 54702 1 54702 1079.2 1.1897e-14
Constant Gender 2251.7 1 2251.7 44.425 1.0693e-05
Constant Error 709.6 14 50.685
Time constant 310.83 1 310.83 31.023 6.9065e-05
Time Gender 13.341 1 13.341 1.3315 0.26785
Time Error 140.27 14 10.019
Time^2 constant 565.42 1 565.42 98.901 1.0003e-07
Time^2 Gender 1.4076 1 1.4076 0.24621 0.62746
Time^2 Error 80.039 14 5.7171
Time^3 constant 2.6127 1 2.6127 1.4318 0.25134
Time^3 Gender 7.8853e-06 1 7.8853e-06 4.3214e-06 0.99837
Time^3 Error 25.546 14 1.8247
Time^4 constant 2.8404 1 2.8404 0.47924 0.50009
Time^4 Gender 2.9016 1 2.9016 0.48956 0.49559
Time^4 Error 82.977 14 5.9269
Матрица Вандермонде является матрицей, где столбцы являются степенями вектора a, то есть V (i, j) = a (i) (n-j), где n - длина a.
QR-факторизация матрицы m-на-n A является факторизацией этой матрицы в произведение A = Q * R, где R является m-на-n верхней треугольной матрицей, а Q является m-на-m унитарной матрицей.
Имеется измененная версия этого примера. Открыть этот пример с помощью изменений?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.