exponenta event banner

anova

Класс: Модель МР

Анализ дисперсии для эффектов между субъектами

Описание

пример

anovatbl = anova(rm) возвращает результаты анализа отклонений для модели повторных измерений rm.

пример

anovatbl = anova(rm,'WithinModel',WM) возвращает результаты анализа расхождений, которые он выполняет, используя ответ или ответы, указанные в модели внутри субъекта WM.

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

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

Модель повторных измерений, возвращенная как RepeatedMeasuresModel объект.

Свойства и методы этого объекта см. в разделе RepeatedMeasuresModel.

Модель внутри субъекта, заданная как одна из следующих:

  • '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'

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

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

Результаты анализа дисперсии для эффектов между субъектами, возвращенные в виде таблицы. Это включает все термины в модели между субъектами и следующие столбцы.

Имя столбцаОпределение
WithinВнутриобъектовые факторы
BetweenФакторы между субъектами
SumSqСумма квадратов
DFСтепени свободы
MeanSqСреднеквадратичная ошибка
FF-статистика
pValuep-значение, соответствующее 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                            

Подробнее

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