ドキュメンテーション

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

predict

クラス: RepeatedMeasuresModel

予測子の値に基づく予測値の計算

構文

  • ypred = predict(rm,tnew)
  • ypred = predict(rm,tnew,Name,Value)
  • [ypred,yci] = predict(___)

説明

ypred = predict(rm,tnew) は、テーブル t から取得した予測子の値を使用して、反復測定モデル rm から予測値を返します。

ypred = predict(rm,tnew,Name,Value) は、1 つ以上の Name,Value ペア引数で指定された追加オプションにより、反復測定モデル rm から予測値を返します。

たとえば、被験者内計画行列を指定できます。

また、[ypred,yci] = predict(___) は、予測値の 95% の信頼区間も返します。

入力引数

すべて展開する

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

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

反復測定モデル rm の予測子として使用する応答変数と被験者間要因の値を含む新しいデータ。テーブルとして指定します。tnew には rm の作成に使用するすべての被験者間要因が格納されていなければなりません。

名前/値のペアの引数

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

すべて展開する

予測値の信頼区間の信頼度。'alpha' と 0 ~ 1 の範囲のスカラー値をコンマ区切りのペアとして指定します。信頼度は 100*(1-alpha)% です。

例: 'alpha',0.01

データ型: double | single

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

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

  • 'orthogonalcontrasts' — 被験者内計画が 1 つの数値因子 T で構成されている場合に有効です。これにより、最大次数が T(r-1) である直交多項式 (r は反復測定の回数) で構成されるモデルが指定されます。

  • 被験者内要因のモデル仕様を定義する文字列。

例: 'WithinModel','orthogonalcontrasts'

被験者内要因の計画。'WithinDesign' とベクトル、行列、テーブルのいずれかで構成されるコンマ区切りペアとして指定します。これにより、被験者内要因の値が RM.WithinDesign プロパティと同じ形式で得られます。

例: 'WithinDesign','Time'

データ型: single | double | table

出力引数

すべて展開する

反復測定モデル rm から得られる予測値。n 行 r 列の行列として返します。ここで、n は tnew の行数、r は rm の反復測定の回数です。

反復測定モデル rm からの予測値の信頼区間。n x r x 2 の行列として返されます。

これは、指定した予測子の値での平均応答を予測するための非同時区間です。予測値 ypred(i,j) に対して、区間の下限は yci(i,j,1)、上限は yci(i,j,2) です。

すべて展開する

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

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 = dataset([1 2 3 4]','VarNames',{'Measurements'});

反復予測モデルを近似します。ここで、測定が応答、species が予測子変数となります。

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

3 つの種類に対する応答を予測します。

Y = predict(rm,t([1 51 101],:))
Y =

    5.0060    3.4280    1.4620    0.2460
    5.9360    2.7700    4.2600    1.3260
    6.5880    2.9740    5.5520    2.0260

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

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

中間の時点での応答を予測します。

time = linspace(0,8)';
Y = predict(rm,t([1 5 8 12],:), ...
    'WithinModel','orthogonalcontrasts','WithinDesign',time);

推定された周辺平均に沿って予測値をプロットします。

plotprofile(rm,'Time','Group',{'Gender'})
hold on; 
plot(time,Y,'Color','r','LineStyle',':');
hold off

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

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

中間の時点での応答を予測します。

time = linspace(0,8)';
[ypred,ypredci] = predict(rm,t([1 5 8 12],:), ...
    'WithinModel','orthogonalcontrasts','WithinDesign',time);

予測値と、予測値の信頼区間を、推定された周辺平均に沿ってプロットします。

plotprofile(rm,'Time','Group',{'Gender'})
hold on; 
plot(time,ypred,'Color','r','LineStyle',':');
plot(time,ypredci(:,:,1))
plot(time,ypredci(:,:,2))
hold off

参考

|

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