ドキュメンテーション

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

fitrm

反復測定モデルの近似

構文

  • rm = fitrm(t,modelspec)
  • rm = fitrm(t,modelspec,Name,Value)

説明

rm = fitrm(t,modelspec) は反復測定モデルを返します。このモデルは modelspec によって指定され、テーブルまたはデータセット配列 t の変数に近似されています。

rm = fitrm(t,modelspec,Name,Value) は、1 つ以上の Name,Value のペアの引数によって指定された追加オプションを使用して反復測定モデルを返します。

たとえば、被験者内要因の仮説を指定することができます。

すべて折りたたむ

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

load fisheriris

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

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

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)
rm = 

  RepeatedMeasuresModel with properties:

   Between Subjects:
         BetweenDesign: [150x5 table]
         ResponseNames: {'meas1'  'meas2'  'meas3'  'meas4'}
    BetweenFactorNames: {'species'}
          BetweenModel: '1 + species'

   Within Subjects:
         WithinDesign: [4x1 table]
    WithinFactorNames: {'Measurements'}
          WithinModel: 'separatemeans'

   Estimates:
    Coefficients: [3x4 table]
      Covariance: [4x4 table]

係数を表示します。

rm.Coefficients
ans = 

                           meas1       meas2      meas3      meas4  
                          ________    ________    ______    ________

    (Intercept)             5.8433      3.0573     3.758      1.1993
    species_setosa        -0.83733     0.37067    -2.296    -0.95333
    species_versicolor    0.092667    -0.28733     0.502     0.12667

fitrm では、'effects' の対比を使用します。これは、係数の合計が 0 になることを意味します。rm.DesignMatrix は、切片を表す 1 が含まれている 1 つの列と、次のような他の 2 つの列 species_setosa および species_versicolor から構成されています。

species_setosa={1,ifsetosa0,ifversicolor1,ifvirginicaandspecies_versicolor={0,ifsetosa1,ifversicolor1,ifvirginica

共分散行列を表示します。

rm.Covariance
ans = 

              meas1       meas2       meas3       meas4  
             ________    ________    ________    ________

    meas1     0.26501    0.092721     0.16751    0.038401
    meas2    0.092721     0.11539    0.055244     0.03271
    meas3     0.16751    0.055244     0.18519    0.042665
    meas4    0.038401     0.03271    0.042665    0.041882

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

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,'WithinModel','orthogonalcontrasts')
rm = 

  RepeatedMeasuresModel with properties:

   Between Subjects:
         BetweenDesign: [16x6 table]
         ResponseNames: {'t0'  't2'  't4'  't6'  't8'}
    BetweenFactorNames: {'Gender'}
          BetweenModel: '1 + Gender'

   Within Subjects:
         WithinDesign: [5x1 table]
    WithinFactorNames: {'Time'}
          WithinModel: 'orthogonalcontrasts'

   Estimates:
    Coefficients: [2x5 table]
      Covariance: [5x5 table]

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

load repeatedmeas

テーブル between には応答として 8 件の反復測定 y1y8 があり、さらに被験者間要因 GroupGenderIQAge があります。IQAge は連続変数です。テーブル within には被験者内要因 w1w2 があります。

反復測定モデルを近似します。ここで、age、IQ、group、gender は予測子変数です。また、モデルには group と gender の交互作用効果が含まれています。また、被験者内要因を定義します。

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

  RepeatedMeasuresModel with properties:

   Between Subjects:
         BetweenDesign: [30x12 table]
         ResponseNames: {'y1'  'y2'  'y3'  'y4'  'y5'  'y6'  'y7'  'y8'}
    BetweenFactorNames: {'Age'  'IQ'  'Group'  'Gender'}
          BetweenModel: '1 + Age + IQ + Group*Gender'

   Within Subjects:
         WithinDesign: [8x2 table]
    WithinFactorNames: {'w1'  'w2'}
          WithinModel: 'separatemeans'

   Estimates:
    Coefficients: [8x8 table]
      Covariance: [8x8 table]

係数を表示します。

rm.Coefficients
ans = 

                                y1         y2         y3         y4          y5           y6         y7          y8   
                             ________    _______    _______    _______    _________    ________    _______    ________

    (Intercept)                141.38     195.25     9.8663    -49.154       157.77     0.23762    -42.462      76.111
    Age                       0.32042    -4.7672    -1.2748     0.6216      -1.0621     0.89927     1.2569    -0.38328
    IQ                        -1.2671    -1.1653    0.05862     0.4288      -1.4518    -0.25501    0.22867    -0.72548
    Group_A                   -1.2195    -9.6186     22.532     15.303       12.602      12.886     10.911      11.487
    Group_B                    2.5186      1.417    -2.2501    0.50181       8.0907      3.1957     11.591      9.9188
    Gender_Female              5.3957    -3.9719     8.5225     9.3403       6.0909       1.642    -2.1212      4.8063
    Group_A:Gender_Female      4.1046     10.064    -7.3053    -3.3085       4.6751      2.4907     -4.325     -4.6057
    Group_B:Gender_Female    -0.48486    -2.9202     1.1222    0.69715    -0.065945    0.079468     3.1832      6.5733

被験者間モデルの各項の関数として反復測定を近似するための係数が表示されます。

入力引数

すべて折りたたむ

入力データ。反復測定モデルで予測子として使用する応答変数の値と被験者間要因が含まれ、テーブルとして指定されます。

データ型: table

モデル仕様の式。'y1-yk ~ terms' の形式の文字列として指定します。応答と項はウィルキンソンの表記法によって指定されます。モデル項で使用される変数がカテゴリカル (ノミナルまたは順序) 配列、論理配列、文字配列、文字列のセル配列のいずれかである場合、fitrm はこの変数をカテゴリカルと認識します。

たとえば、応答として 4 つの反復測定があり、予測子変数として係数 x1x2x3 がある場合、反復測定モデルを次のように定義できます。

例: 'y1-y4 ~ x1 + x2 * x3'

名前/値のペアの引数

オプションの Name,Value の引数ペアをコンマ区切りで指定します。ここで、Name は引数名で、Value は対応する値です。Name は単一引用符 (' ') で囲まなければなりません。Name1,Value1,...,NameN,ValueN のように、複数の名前と値のペアの引数を任意の順序で指定できます。

例: 'WithinDesign','W','WithinModel','w1+w2' は行列 w を被験者内要因の計画行列として指定します。また、被験者内要因 w1 および w2 のモデルは 'w1+w2' です。

すべて折りたたむ

被験者内要因の計画。'WithinDesign' と以下のいずれかで構成されるコンマ区切りペアとして指定します。

  • 長さが r の数値ベクトル (r は反復測定の数)。

    この場合、fitrm はベクトルの値 (通常は時間の値) を連続値として扱います。

  • k 個の被験者内要因の値 (w1、w2、...、wk) が格納された、r 行 k 列の数値行列。

    この場合、fitrm は k 個の変数すべてを連続変数として扱います。

  • k 個の被験者内要因の値が格納された、r 行 k 列のテーブル。

    この場合、fitrm はすべての数値変数を連続変数、すべてのカテゴリカル変数をカテゴリカル変数として扱います。

たとえば、テーブル weeks に被験者内要因の値が格納されている場合、計画テーブルを次のように定義できます。

例: 'WithinDesign',weeks

データ型: single | double | table

被験者内仮説検定を指定するモデル。'WithinModel' と以下のいずれかで構成されるコンマ区切りペアとして指定します。

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

  • 'orthogonalcontrasts' — 被験者内モデルが単一の数値係数 T をもつ場合のみ有効です。応答は平均値、中心に位置する T の勾配、また一般的に最大 T^(p – 1) までの多項式のすべての直交対比 (p は被験者内モデルの行数)。

  • 被験者内要因のモデル仕様を定義する文字列。modelspecterms の規則に基づいてモデルを定義できます。

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

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

データ型: single | double

出力引数

すべて折りたたむ

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

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

詳細

すべて折りたたむ

ウィルキンソンの表記法によるモデルの指定

ウィルキンソンの表記法は、モデルに存在する因子を記述します。これらの因子の乗算器 (係数) は記述されません。

次の規則を使用して、modelspec の応答を指定します。

ウィルキンソンの表記法意味
Y1,Y2,Y3変数の特定のリスト
Y1-Y5Y1Y5 のすべてのテーブル変数

次の規則を使用して、modelspec の項を指定します。

ウィルキンソンの表記法標準表記の因子
1定数 (切片) 項
X^kk は正の整数XX2、...、Xk
X1 + X2X1X2
X1*X2X1X2X1*X2
X1:X2X1*X2 のみ
-X2X2 は含めない
X1*X2 + X3X1X2X3X1*X2
X1 + X2 + X3 + X1:X2X1X2X3X1*X2
X1*X2*X3 - X1:X2:X3X1X2X3X1*X2X1*X3X2*X3
X1*(X2 + X3)X1X2X3X1*X2X1*X3

Statistics and Machine Learning Toolbox™ 表記は、-1 を使用して項を明示的に削除しない限り、常に定数項を含みます。

R2014a で導入

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