ドキュメンテーション

最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

ranova

クラス: RepeatedMeasuresModel

構文

ranovatbl = ranova(rm)
ranovatbl = ranova(rm,'WithinModel',WM)
[ranovatbl,A,C,D] = ranova(___)

説明

ranovatbl = ranova(rm) はテーブル ranovatbl の反復測定モデル rm に関する反復測定分散分析の結果を返します。

ranovatbl = ranova(rm,'WithinModel',WM) は、被験者内モデル WM で指定された応答により、反復測定の分散分析の結果を返します。

[ranovatbl,A,C,D] = ranova(___) は、A*B*C = D という形式の仮説検定の配列 AC および D も返します。ここで D は 0 です。

入力引数

すべて展開する

反復測定モデル。RepeatedMeasuresModel オブジェクトとして返します。

このオブジェクトのプロパティとメソッドについては、RepeatedMeasuresModel を参照してください。

応答を指定するモデル。以下のいずれかとして指定します。

  • 'separatemeans' — グループごとの平均を計算します。

  • C — r 行 nc 列の対比行列。r 件の反復測定の中の nc 件の対比を指定します。Y が反復測定の行列を表している場合、ranova は Y*C の平均が 0 であるという仮定を検定します。

  • 被験者内要因のモデル仕様を定義する文字ベクトル。fitrmmodelspec引数で terms の規則に基づいてモデルを定義できます。反復測定モデルのモデル仕様も参照してください。

たとえば、被験者内要因が w1w2w3 の 3 つである場合、被験者内要因のモデルを次のように指定できます。

例: 'WithinModel','w1+w2+w2*w3'

データ型: single | double

出力引数

すべて展開する

反復測定 ANOVA の結果。table として返します。

ranovatbl には、被験者内要因間のすべての差分を表す項が含まれます。モデルの近似中に被験者内要因の名前が指定されている場合、その名前がこの項に設定されます。また、モデルの近似中に被験者内要因の名前が指定されていなかったり、被験者内要因が複数存在する場合は、Time という名前がこの項に設定されます。ranovatbl には、被験者内モデルの項とすべての被験者間モデルの項の間にある、すべての交互作用が含まれます。次の各列があります。

列名定義
SumSq二乗和。
DF自由度。
MeanSq平均二乗誤差。
FF 統計量。
pValueF 統計量に対応する p 値。p が小さい場合、項の効果が大きいことを表します。
pValueGGグリーンハウス・ガイザー調整による p 値。
pValueHFヒューン・フェルト調整による p 値。
pValueLB下限調整による p 値。

最後の 3 つの p 値は、複合対称性仮定が満たされない場合に使用する、調整後の p 値です。詳細は、複合対称性仮定とイプシロン補正を参照してください。mauchy メソッドは球面性 (およびそれにともなう複合対称性) を検定し、epsilon はイプシロン調整値を返します。

被験者間モデルに基づく仕様。行列またはセル配列として返します。これにより、B の所定の列内にある要素に対する仮説 (時間内仮説) が可能になります。ranovatbl に複数の仮説検定がある場合、A はセル配列となることがあります。

データ型: single | double | cell

被験者内モデルに基づく仕様。行列またはセル配列として返します。これにより、B の所定の行内にある要素に対する仮説 (時間間仮説) が可能になります。ranovatbl に複数の仮説検定がある場合、C はセル配列となることがあります。

データ型: single | double | cell

仮説値。0 として返します。

すべて展開する

標本データを読み込みます。

load fisheriris

列ベクトル species は、3 種類のアヤメ (setosa、versicolor、virginica) で構成されています。double 行列 meas は、がく片の長さと幅 (cm) および花弁の長さと幅 (cm) という花に関する 4 種類の測定値で構成されています。

データをテーブル配列に保存します。

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

反復測定の分散分析を実行します。

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                                                                      

4 件の測定値、3 つの種類、150 件の観測値があります。したがって、自由度は、測定値については (4-1) = 3、種類と測定値の交互作用については (4-1)*(3-1) = 6、誤差については (150-4)*(3-1) = 441 です。ranova は最後の 3 つの 値をそれぞれグリーンハウス・ガイザー補正、ヒューン・フェルト補正、下限補正により計算します。mauchly メソッドを使用すると複合対称性 (球面性) 仮定を確認でき、epsilon メソッドを使用するとイプシロン補正を表示できます。

標本データを含むフォルダーに移動します。

cd(matlabroot)
cd('help/toolbox/stats/examples')

標本データを読み込みます。

load('longitudinalData')

行列 Y には 16 人の応答データが含まれています。応答は 5 つの時間点 (time = 0、2、4、6、8) で測定された薬の血中濃度です。Y の各行は 1 人の個人に対応し、各列は 1 つの時間点に対応します。最初の 8 人の被験者は女性で、次の 8 人の被験者は男性です。このデータは、シミュレーションされたものです。

性別情報を格納する変数を定義します。

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 です。 値は 2.6198e-05 という小さい値なので、時間が血圧に与える影響は有意であることがわかります。0.40063 という 値は、性別と時間に有意な交互作用がないことを示しています。

標本データを読み込みます。

load repeatedmeas

テーブル between には、被験者間変数である年齢、IQ、グループ、性別、および 8 件の反復測定値 y1y8 が応答として含まれています。テーブル within には被験者内変数 w1 および w2 が含まれています。このデータは、シミュレーションされたものです。

反復測定モデルをあてはめます。ここで、反復測定値 y1y8 は応答であり、年齢、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                                                                
    (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                                                                
    (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
    IQ:w2              3650.1     3    1216.7      3.8237     0.013744     0.020636     0.016005     0.063351
    Group:w2           5963.8     6    993.96      3.1237    0.0093493     0.015434     0.011278     0.063955
    Gender:w2          2173.1     3    724.38      2.2765     0.087813      0.10134     0.092674      0.14557
    Group:Gender:w2    3339.6     6     556.6      1.7492      0.12345         0.14       0.1294      0.19724
    Error(w2)           21001    66     318.2                                                                


A =

  6×1 cell array

    [1×8 double]
    [1×8 double]
    [1×8 double]
    [2×8 double]
    [1×8 double]
    [2×8 double]


C =

  1×3 cell array

    [8×1 double]    [8×1 double]    [8×3 double]


D =

     0

A の内容を表示します。

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

     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 =

     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 は次のように、F 統計値の累積分布関数を使用して通常の p 値 (rmanova テーブルの pValue 列にあります) を計算します。

p 値 = 1 – fcdf(F,v1,v2)

複合対称性仮定が満たされない場合、ranova は次のように補正係数イプシロン (ε) を使用して補正後の p 値を計算します。

補正後の p 値 = 1 – fcdf(F,ε*v1,ε*v2)

mauchly メソッドは球面性 (およびそれにともなう複合対称性) を検定し、epsilon はイプシロン調整値を返します。

この情報は役に立ちましたか?