anova

Класс: LinearMixedModel

Анализ отклонения для линейной модели смешанных эффектов

Описание

пример

stats = anova(lme) возвращает массив набора данных stats который включает результаты F-тестов для каждого термина с фиксированными эффектами в линейной модели со смешанными эффектами lme.

пример

stats = anova(lme,Name,Value) также возвращает массив набора данных stats с дополнительными опциями, заданными одним или несколькими Name,Value аргументы в виде пар.

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

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

Линейная модель смешанных эффектов, заданная как LinearMixedModel объект, созданный с использованием fitlme или fitlmematrix.

Аргументы в виде пар имя-значение

Задайте необязательные разделенные разделенными запятой парами Name,Value аргументы. Name - имя аргумента и Value - соответствующее значение. Name должны находиться внутри кавычек. Можно задать несколько аргументов в виде пар имен и значений в любом порядке Name1,Value1,...,NameN,ValueN.

Метод для вычисления приблизительных степеней свободы для использования в F-тесте, заданный как разделенная разделенными запятой парами, состоящая из 'DFMethod' и одно из следующих.

'residual'По умолчанию. Степени свободы приняты постоянными и равными n - p, где n - количество наблюдений и p - количество фиксированных эффектов.
'satterthwaite'Саттертвейское приближение.
'none'Все степени свободы установлены в бесконечность.

Например, можно задать приближение Саттертвейта следующим образом.

Пример: 'DFMethod','satterthwaite'

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

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

Результаты F -tests для членов с фиксированными эффектами, возвращенные как массив набора данных со следующими столбцами.

TermИмя термина фиксированных эффектов
FstatF -статистический для термина
DF1Числитель степеней свободы для F -statistic
DF2Знаменательные степени свободы для F -статистического
pValuep -значение теста для термина

Существует одна строка для каждого термина с фиксированными эффектами. Каждый член является непрерывной переменной, сгруппированной переменной или взаимодействием между двумя или более непрерывными или сгруппированные переменные. Для каждого срока действия фиксированных эффектов, anova выполняет F -test (маргинальный тест), чтобы определить, все ли коэффициенты, представляющие термин с фиксированными эффектами, равны 0. Чтобы выполнить тесты для гипотезы типа III, вы должны использовать 'effects' контрастирует при подборе модели линейных смешанных эффектов.

Примеры

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

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

load('shift.mat')

Данные показывают отклонения от целевой характеристики качества, измеренные по продуктам, которые пять операторов производят в три сдвигов: утреннюю, вечернюю и ночную. Это рандомизированный проект блока, где операторы являются блоками. Эксперимент предназначен для изучения влияния времени сдвига на эффективность. Показателем эффективности является отклонение характеристик качества от целевого значения. Это моделируемые данные.

Shift и Operator являются номинальными переменными.

shift.Shift = nominal(shift.Shift);
shift.Operator = nominal(shift.Operator);

Подгонка модели линейных смешанных эффектов со случайной точкой пересечения, сгруппированным оператором, чтобы оценить, значительно ли отличается эффективность в зависимости от времени сдвига. Используйте метод ограниченного максимального правдоподобия и 'effects' контрасты.

'effects' контрасты указывают, что коэффициенты равны 0, и fitlme создает две контрастно-кодированные переменные в матрице проекта с фиксированными эффектами, $ X $1 и $ X $2, где

Shift_Evening={0,ifMorning1,ifEvening-1,ifNight

и

Shift_Morning={1,ifMorning0,ifEvening-1,ifNight.

Модель соответствует

MorningShift:QCDevim=β0+β2Shift_Morningi+b0m+εim,m=1,2,...,5,EveningShift:QCDevim=β0+β1Shift_Eveningi+b0m+εim,NightShift:QCDevim=β0-β1Shift_Eveningi-β2Shift_Morningi+b0m+εim,

где b ~ N (0 ,σb2 ) и ϵ ~ N (0 ,σ2 ).

lme = fitlme(shift,'QCDev ~ Shift + (1|Operator)',...
'FitMethod','REML','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:
    QCDev ~ 1 + Shift + (1 | 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
    {'Shift_Evening'}        -0.53293    0.31206    -1.7078    12      0.11339
    {'Shift_Morning'}        -0.91973    0.31206    -2.9473    12     0.012206


    Lower      Upper   
     1.6021       5.703
    -1.2129     0.14699
    -1.5997    -0.23981

Random effects covariance parameters (95% CIs):
Group: Operator (5 Levels)
    Name1                  Name2                  Type           Estimate
    {'(Intercept)'}        {'(Intercept)'}        {'std'}        2.0457  


    Lower      Upper 
    0.98207    4.2612

Group: Error
    Name               Estimate    Lower      Upper
    {'Res Std'}        0.85462     0.52357    1.395

Выполните F-test, чтобы определить, все ли коэффициенты с фиксированными эффектами 0.

anova(lme)
ans = 
    ANOVA marginal tests: DFMethod = 'Residual'

    Term                   FStat     DF1    DF2    pValue   
    {'(Intercept)'}        15.063    1      12     0.0021832
    {'Shift'      }        11.091    2      12     0.0018721

p-значение для постоянного члена 0,0021832 совпадает с значением в таблице коэффициентов в lme отображение. p-значение 0,0018721 для Shift измеряет совокупную значимость для обоих коэффициентов, представляющих Shift.

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

load('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 являются переменными фиксированных эффектов, и среднее выражение изменяется в зависимости от блока (тип почвы) и графиков внутри блоков (типы томатов в пределах типов почвы) независимо. Используйте 'effects' контрастирует при подгонке данных для суммы квадратов типа III.

lme = fitlme(ds,'Yield ~ Fertilizer * Tomato + (1|Soil) + (1|Soil:Tomato)',...
'DummyVarCoding','effects')
lme = 
Linear mixed-effects model fit by ML

Model information:
    Number of observations              60
    Fixed effects coefficients          20
    Random effects coefficients         18
    Covariance parameters                3

Formula:
    Yield ~ 1 + Tomato*Fertilizer + (1 | Soil) + (1 | Soil:Tomato)

Model fit statistics:
    AIC       BIC       LogLikelihood    Deviance
    522.57    570.74    -238.29          476.57  

Fixed effects coefficients (95% CIs):
    Name                                    Estimate    SE        tStat       DF
    {'(Intercept)'                 }           104.6    3.3008       31.69    40
    {'Tomato_Cherry'               }             1.4    5.9353     0.23588    40
    {'Tomato_Grape'                }         -7.7667    5.9353     -1.3085    40
    {'Tomato_Heirloom'             }         -11.183    5.9353     -1.8842    40
    {'Tomato_Plum'                 }          30.233    5.9353      5.0938    40
    {'Fertilizer_1'                }         -28.267    2.3475     -12.041    40
    {'Fertilizer_2'                }         -1.9333    2.3475    -0.82356    40
    {'Fertilizer_3'                }          10.733    2.3475      4.5722    40
    {'Tomato_Cherry:Fertilizer_1'  }        -0.73333    4.6951    -0.15619    40
    {'Tomato_Grape:Fertilizer_1'   }         -7.5667    4.6951     -1.6116    40
    {'Tomato_Heirloom:Fertilizer_1'}          5.1833    4.6951       1.104    40
    {'Tomato_Plum:Fertilizer_1'    }          2.7667    4.6951     0.58927    40
    {'Tomato_Cherry:Fertilizer_2'  }             7.6    4.6951      1.6187    40
    {'Tomato_Grape:Fertilizer_2'   }            -1.9    4.6951    -0.40468    40
    {'Tomato_Heirloom:Fertilizer_2'}          5.5167    4.6951       1.175    40
    {'Tomato_Plum:Fertilizer_2'    }            -3.9    4.6951    -0.83066    40
    {'Tomato_Cherry:Fertilizer_3'  }         -6.0667    4.6951     -1.2921    40
    {'Tomato_Grape:Fertilizer_3'   }          3.7667    4.6951     0.80226    40
    {'Tomato_Heirloom:Fertilizer_3'}          3.1833    4.6951     0.67802    40
    {'Tomato_Plum:Fertilizer_3'    }             1.1    4.6951     0.23429    40


    pValue        Lower      Upper  
    5.9086e-30     97.929     111.27
       0.81473    -10.596     13.396
       0.19816    -19.762     4.2291
      0.066821    -23.179    0.81242
     8.777e-06     18.238     42.229
    7.0265e-15    -33.011    -23.522
       0.41507    -6.6779     2.8112
     4.577e-05     5.9888     15.478
       0.87667    -10.222     8.7558
       0.11491    -17.056     1.9224
       0.27619    -4.3058     14.672
       0.55899    -6.7224     12.256
       0.11337    -1.8891     17.089
       0.68787    -11.389     7.5891
       0.24695    -3.9724     15.006
        0.4111    -13.389     5.5891
       0.20373    -15.556     3.4224
       0.42714    -5.7224     13.256
       0.50167    -6.3058     12.672
       0.81596    -8.3891     10.589

Random effects covariance parameters (95% CIs):
Group: Soil (3 Levels)
    Name1                  Name2                  Type           Estimate
    {'(Intercept)'}        {'(Intercept)'}        {'std'}        2.5028  


    Lower       Upper 
    0.027711    226.05

Group: Soil:Tomato (15 Levels)
    Name1                  Name2                  Type           Estimate
    {'(Intercept)'}        {'(Intercept)'}        {'std'}        10.225  


    Lower     Upper 
    6.1497    17.001

Group: Error
    Name               Estimate    Lower     Upper 
    {'Res Std'}        10.499      8.5389    12.908

Выполните дисперсионный анализ, чтобы проверить наличие фиксированных эффектов.

anova(lme)
ans = 
    ANOVA marginal tests: DFMethod = 'Residual'

    Term                         FStat     DF1    DF2    pValue    
    {'(Intercept)'      }        1004.2     1     40     5.9086e-30
    {'Tomato'           }        7.1663     4     40     0.00018935
    {'Fertilizer'       }        58.833     3     40     1.0024e-14
    {'Tomato:Fertilizer'}        1.4182    12     40        0.19804

p-значение для постоянного члена, 5.9086e-30, совпадает с значением в таблице коэффициентов в lme отображение. p- значения 0,00018935, 1,0024e-14 и 0,19804 для Tomato, Fertilizer, и Tomato:Fertilizer представляют совокупную значимость для всех коэффициентов помидоров, коэффициентов удобрения и коэффициентов, представляющих взаимодействие между томатом и удобрением, соответственно. pЗначение 0,19804 указывает, что взаимодействие между томатом и удобрением незначительно.

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

load('weight.mat')

weight содержит данные продольного исследования, где 20 субъектам случайным образом назначены 4 программы упражнений, и их потеря веса регистрируется в течение шести 2-недельных периодов времени. Это моделируемые данные.

Сохраните данные в таблице. Определите Subject и Program как категориальные переменные.

tbl = table(InitialWeight,Program,Subject,Week,y);
tbl.Subject = nominal(tbl.Subject);
tbl.Program = nominal(tbl.Program);

Подгонка модели с помощью 'effects' контрасты.

lme = fitlme(tbl,'y ~ InitialWeight + Program*Week + (Week|Subject)',...
		'DummyVarCoding','effects')
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:
    y ~ 1 + InitialWeight + Program*Week + (1 + Week | Subject)

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 
    {'(Intercept)'   }          0.77122      0.24309      3.1725    111
    {'InitialWeight' }        0.0031879    0.0013814      2.3078    111
    {'Program_A'     }         -0.11017     0.080377     -1.3707    111
    {'Program_B'     }          0.25061      0.08045      3.1151    111
    {'Program_C'     }         -0.14344     0.080475     -1.7824    111
    {'Week'          }          0.19881     0.033727      5.8946    111
    {'Program_A:Week'}        -0.025607     0.058417    -0.43835    111
    {'Program_B:Week'}         0.013164     0.058417     0.22535    111
    {'Program_C:Week'}        0.0049357     0.058417    0.084492    111


    pValue        Lower         Upper    
     0.0019549       0.28951       1.2529
      0.022863    0.00045067    0.0059252
       0.17323      -0.26945       0.0491
     0.0023402      0.091195      0.41003
      0.077424       -0.3029     0.016031
    4.1099e-08       0.13198      0.26564
       0.66198      -0.14136     0.090149
       0.82212      -0.10259      0.12892
       0.93282      -0.11082      0.12069

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

pЗначения 0.022863 и 4.1099e-08 указывают на значительные эффекты начальных весов субъектов и временного фактора в количестве потерянного веса. Потеря веса субъектов, которые находятся в программе B, значительно отличается по сравнению с потерей веса субъектов, которые находятся в программе A. Нижний и верхний пределы ковариационных параметров для случайных эффектов не включают нули, поэтому они значительны.

Выполните F-тест, чтобы все коэффициенты с фиксированными эффектами были нулевыми.

anova(lme)
ans = 
    ANOVA marginal tests: DFMethod = 'Residual'

    Term                     FStat       DF1    DF2    pValue    
    {'(Intercept)'  }          10.065    1      111     0.0019549
    {'InitialWeight'}           5.326    1      111      0.022863
    {'Program'      }          3.6798    3      111      0.014286
    {'Week'         }          34.747    1      111    4.1099e-08
    {'Program:Week' }        0.066648    3      111       0.97748

p-значения для постоянного члена, начального веса и недели те же, что и в таблице коэффициентов в предыдущей lme выход отображения. p-значение 0,014286 для Program представляет совокупную значимость для всех программных коэффициентов. Точно так же, p-значение взаимодействия между программой и неделей (Program:Week) измеряет совокупную значимость для всех коэффициентов, представляющих это взаимодействие.

Теперь используйте метод Саттертвейта, чтобы вычислить степени свободы.

anova(lme,'DFMethod','satterthwaite')
ans = 
    ANOVA marginal tests: DFMethod = 'Satterthwaite'

    Term                     FStat       DF1    DF2       pValue    
    {'(Intercept)'  }          10.065    1      20.445      0.004695
    {'InitialWeight'}           5.326    1          20      0.031827
    {'Program'      }          3.6798    3       19.14      0.030233
    {'Week'         }          34.747    1          20    9.1346e-06
    {'Program:Week' }        0.066648    3          20       0.97697

Метод Саттертвейта дает меньшие знаменательные степени свободы и немного большие p-значения.

Совет

  • Для каждого срока действия фиксированных эффектов, anova выполняет F -test (маргинальный тест), что все коэффициенты, представляющие термин с фиксированными эффектами, равны 0. Чтобы выполнить тесты для гипотез типа III, вы должны задать 'DummyVarCoding' аргумент пары "имя-значение" в 'effects' контрасты при подборе модели линейных смешанных эффектов.

Для просмотра документации необходимо авторизоваться на сайте