ranova

Класс: RepeatedMeasuresModel

Анализ повторных измерений отклонения

Описание

пример

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

пример

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

пример

[ranovatbl,A,C,D] = ranova(___) также возвращает массивы A, C, и D для проверки гипотез формы A*B*C = D, где D равен нулю.

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

расширить все

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

Для свойств и методов этого объекта смотрите RepeatedMeasuresModel.

Модель, задающая ответы, заданная как одно из следующего:

  • 'separatemeans' - Вычислите отдельное среднее для каждой группы.

  • C - r -by - nc контрастная матрица, задающая nc контрастов среди r повторных измерений. Если Y представляет матрицу повторных измерений, ranova проверяет гипотезу, что средства Y * C равны нулю.

  • Вектор символов или строковый скаляр, который задает спецификацию модели в факторах внутри субъекта. Можно задать модель на основе правил для terms в modelspec аргумент fitrm. Также смотрите Спецификацию Модели для Моделей Повторных Измерений.

Для примера, если существует три внутренних фактора w1, w2, и w3, затем можно задать модель для факторов внутри субъекта следующим образом.

Пример: 'WithinModel','w1+w2+w2*w3'

Типы данных: single | double | char | string

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

расширить все

Результаты повторных измерений Ановой, возвращенной в качестве table.

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

Имя столбцаОпределение
SumSqСумма квадратов.
DFСтепени свободы.
MeanSqСредняя квадратичная невязка.
FF -статистический.
pValuep -value для соответствующего F -statistic. Небольшое p -значение указывает на значительный эффект термина.
pValueGGp -значение с корректировкой Greenhouse-Geisser.
pValueHFp -значение с регулировкой Гюйна-Фельдта.
pValueLBp -значение с регулировкой нижней границы.

Последние три p -значения являются скорректированными p -значениями для использования, когда предположение составной симметрии не удовлетворяется. Для получения дополнительной информации см. «Допущение составной симметрии» и «Коррекции эпсилона». The mauchy методы испытаний на сферичность (следовательно, сложную симметрию) и epsilon метод возвращает значения корректировки эпсилона.

Спецификация, основанная на модели между субъектами, возвращается как матрица или массив ячеек. Это разрешает гипотезу об элементах в заданных столбцах B (в пределах временной гипотезы). Если ranovatbl содержит несколько тестов гипотез, A возможно, это массив ячеек.

Типы данных: single | double | cell

Спецификация, основанная на модели внутри субъектов, возвращается как матрица или массив ячеек. Это разрешает гипотезы об элементах в заданных строках B (между временными гипотезами). Если ranovatbl содержит несколько тестов гипотез, C возможно, это массив ячеек.

Типы данных: single | double | cell

Значение гипотезы, возвращенное как 0.

Примеры

расширить все

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

load fisheriris

Область вектора-столбца species состоит из цветков радужки трех различных видов: сетоза, версиколор, виргиника. Матрица с двойной meas состоит из четырех видов измерений на цветках: длина и ширина чашелистиков и лепестков в сантиметрах соответственно.

Сохраните данные в массиве таблиц.

t = table(species,meas(:,1),meas(:,2),meas(:,3),meas(:,4),...
'VariableNames',{'species','meas1','meas2','meas3','meas4'});
Meas = table([1 2 3 4]','VariableNames',{'Measurements'});

Подгонка модели повторных измерений, где измерения являются откликами, а вид является переменной.

rm = fitrm(t,'meas1-meas4~species','WithinDesign',Meas);

Выполните повторный измерительный анализ отклонения.

ranovatbl = ranova(rm)
ranovatbl=3×8 table
                                SumSq     DF      MeanSq       F         pValue        pValueGG       pValueHF       pValueLB  
                                ______    ___    ________    ______    ___________    ___________    ___________    ___________

    (Intercept):Measurements    1656.3      3      552.09    6873.3              0    9.4491e-279    2.9213e-283    2.5871e-125
    species:Measurements        282.47      6      47.078     586.1    1.4271e-206    4.9313e-156    1.5406e-158     9.0151e-71
    Error(Measurements)         35.423    441    0.080324                                                                      

Существует четыре измерения, три типа видов и 150 наблюдений. Так, степени свободы для измерений равны (4-1) = 3, для взаимодействия видов-измерений это (4-1) * (3-1) = 6, а для ошибки это (150-3) * (4-1) = 441. ranova вычисляет последние три p- значения с использованием Greenhouse-Geisser, Huynh-Feldt и Нижняя граница коррекций, соответственно. Можно проверить допущение составной симметрии (сферичности), используя mauchly метод, и отобразить коррекции эпсилона с помощью epsilon способ.

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

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);

Выполните повторный измерительный анализ отклонения.

ranovatbl = ranova(rm)
ranovatbl=3×8 table
                        SumSq     DF    MeanSq       F         pValue       pValueGG      pValueHF      pValueLB 
                        ______    __    ______    _______    __________    __________    __________    __________

    (Intercept):Time     881.7     4    220.43     37.539    3.0348e-15    4.7325e-09    2.4439e-10    2.6198e-05
    Gender:Time          17.65     4    4.4125    0.75146       0.56126        0.4877       0.50707       0.40063
    Error(Time)         328.83    56     5.872                                                                   

Существует 5 временных точек, 2 пола и 16 наблюдений. Так, степени свободы для времени равны (5-1) = 4, для гендерно-временного взаимодействия это (5-1) * (2-1) = 4, а для ошибки это (16-2) * (5-1) = 56. МаленькоеpЗначение 2.6198e-05 указывает, что существует значительный эффект времени на артериальное давление. p Значение 0.40063 указывает на отсутствие значительного взаимодействия по гендерному времени.

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

load repeatedmeas

Таблица between включает возраст переменных между субъектами, IQ, группу, пол и восемь повторных измерений y1 через y8 в качестве ответов. Таблица внутри включает переменные внутри субъекта w1 и w2. Это моделируемые данные. Гипотетически ответ может быть результатами теста памяти. Переменная внутри субъекта w1 может быть типом упражнения, которое субъект делает перед тестом и w2 может быть различными точками в день, когда субъект проходит тест памяти. Таким образом, один субъект делает два разных типа упражнений A и B перед сдачей теста и проходит тест в четыре разных раза в разные дни. Для каждого субъекта измерения проводятся в следующих условиях:

Упражнение для выполнения перед тестом: A B A B A B A B

Время тестирования: 1 1 2 2 3 3 4 4

Подбирайте модель повторных измерений, где повторные измерения y1 через y8 являются откликами, и возраст, IQ, группа, пол и взаимодействие группа-пол являются переменными предиктора. Также задайте матрицу проекта внутри субъекта.

rm = fitrm(between,'y1-y8 ~ Group*Gender + Age + IQ','WithinDesign',within);

Выполните повторный измерительный анализ отклонения.

ranovatbl = ranova(rm)
ranovatbl=7×8 table
                         SumSq     DF     MeanSq       F        pValue      pValueGG    pValueHF     pValueLB
                         ______    ___    ______    _______    _________    ________    _________    ________

    (Intercept):Time     6645.2      7    949.31     2.2689     0.031674    0.071235     0.056257     0.14621
    Age:Time             5824.3      7    832.05     1.9887     0.059978     0.10651     0.090128     0.17246
    IQ:Time              5188.3      7    741.18     1.7715     0.096749     0.14492      0.12892     0.19683
    Group:Time            15800     14    1128.6     2.6975    0.0014425    0.011884    0.0064346    0.089594
    Gender:Time          4455.8      7    636.55     1.5214      0.16381     0.20533      0.19258     0.23042
    Group:Gender:Time    4247.3     14    303.38    0.72511      0.74677       0.663      0.69184     0.49549
    Error(Time)           64433    154    418.39                                                             

Задайте модель для коэффициентов внутри субъекта. Также отобразите матрицы, используемые в тесте гипотезы.

[ranovatbl,A,C,D] = ranova(rm,'WithinModel','w1+w2')
ranovatbl=21×8 table
                       SumSq     DF    MeanSq       F         pValue      pValueGG     pValueHF     pValueLB 
                       ______    __    ______    ________    _________    _________    _________    _________

    (Intercept)        3141.7     1    3141.7      2.5034      0.12787      0.12787      0.12787      0.12787
    Age                537.48     1    537.48     0.42828      0.51962      0.51962      0.51962      0.51962
    IQ                 2975.9     1    2975.9      2.3712      0.13785      0.13785      0.13785      0.13785
    Group               20836     2     10418      8.3012    0.0020601    0.0020601    0.0020601    0.0020601
    Gender             3036.3     1    3036.3      2.4194      0.13411      0.13411      0.13411      0.13411
    Group:Gender        211.8     2     105.9    0.084385      0.91937      0.91937      0.91937      0.91937
    Error               27609    22      1255           1          0.5          0.5          0.5          0.5
    (Intercept):w1     146.75     1    146.75     0.23326      0.63389      0.63389      0.63389      0.63389
    Age:w1             942.02     1    942.02      1.4974      0.23402      0.23402      0.23402      0.23402
    IQ:w1              11.563     1    11.563     0.01838      0.89339      0.89339      0.89339      0.89339
    Group:w1           4481.9     2    2240.9       3.562     0.045697     0.045697     0.045697     0.045697
    Gender:w1          270.65     1    270.65      0.4302      0.51869      0.51869      0.51869      0.51869
    Group:Gender:w1    240.37     2    120.19     0.19104      0.82746      0.82746      0.82746      0.82746
    Error(w1)           13841    22    629.12           1          0.5          0.5          0.5          0.5
    (Intercept):w2     3663.8     3    1221.3      3.8381     0.013513     0.020339      0.01575     0.062894
    Age:w2             1199.9     3    399.95      1.2569       0.2964      0.29645      0.29662      0.27432
      ⋮

A=6×1 cell array
    {[1 0 0 0 0 0 0 0]}
    {[0 1 0 0 0 0 0 0]}
    {[0 0 1 0 0 0 0 0]}
    {2x8 double       }
    {[0 0 0 0 0 1 0 0]}
    {2x8 double       }

C=1×3 cell array
    {8x1 double}    {8x1 double}    {8x3 double}

D = 0

Отображение содержимого A.

[A{1};A{2};A{3};A{4};A{5};A{6}]
ans = 8×8

     1     0     0     0     0     0     0     0
     0     1     0     0     0     0     0     0
     0     0     1     0     0     0     0     0
     0     0     0     1     0     0     0     0
     0     0     0     0     1     0     0     0
     0     0     0     0     0     1     0     0
     0     0     0     0     0     0     1     0
     0     0     0     0     0     0     0     1

Отображение содержимого C.

[C{1} C{2} C{3}]
ans = 8×5

     1     1     1     0     0
     1     1     0     1     0
     1     1     0     0     1
     1     1    -1    -1    -1
     1    -1     1     0     0
     1    -1     0     1     0
     1    -1     0     0     1
     1    -1    -1    -1    -1

Алгоритмы

ranova вычисляет регулярное p -значение (в pValue столбец rmanova таблица) с помощью F -статистической кумулятивной функции распределения :

p -value = 1 - fcdf (F, v 1, v 2).

Когда предположение составной симметрии не удовлетворено, ranova использует эпсилон корректирующего коэффициента, ε, чтобы вычислить скорректированные p значения следующим образом :

p -value _ corrected = 1 - fcdf (F, ε * v 1, ε * v 2).

The mauchly методы испытаний на сферичность (следовательно, сложную симметрию) и epsilon метод возвращает значения корректировки эпсилона.