Main Content

feval

各予測子について 1 つずつ入力を使用して一般化線形回帰モデルの応答を予測

説明

ypred = feval(mdl,Xnew1,Xnew2,...,Xnewn) は、新しい入力予測子 Xnew1,Xnew2,...,Xnewn に対する mdl の予測応答を返します。

すべて折りたたむ

一般化線形回帰モデルを作成し、入力データ範囲に対する応答をプロットします。

基となる 2 つの予測子 X(:,1) および X(:,2) のポアソン乱数を使って標本データを生成します。

rng('default') % For reproducibility
rndvars = randn(100,2);
X = [2 + rndvars(:,1),rndvars(:,2)];
mu = exp(1 + X*[1;2]);
y = poissrnd(mu);

ポアソン データの一般化線形回帰モデルを作成します。

mdl = fitglm(X,y,'y ~ x1 + x2','Distribution','poisson');

X(:,1) および X(:,2) の値範囲を生成し、それぞれの値での予測をプロットします。

[Xtest1,Xtest2] = meshgrid(min(X(:,1)):.5:max(X(:,1)),min(X(:,2)):.5:max(X(:,2)));
Z = feval(mdl,Xtest1,Xtest2);
surf(Xtest1,Xtest2,Z)

Figure contains an axes object. The axes object contains an object of type surface.

入力引数

すべて折りたたむ

一般化線形回帰モデル。fitglm または stepwiseglm を使用して作成した GeneralizedLinearModel オブジェクト、または compact を使用して作成した CompactGeneralizedLinearModel オブジェクトとして指定します。

新しい予測子の値。ベクトル、行列、table またはデータセット配列を指定します。

  • 1 つの予測子変数に対する観測値がそれぞれに含まれている複数の入力 Xnew1,Xnew2,...,Xnewn を渡す場合、各入力はベクトルでなければなりません。各ベクトルは同じサイズでなければなりません。予測子変数をスカラーとして指定した場合、feval は他の引数と同じサイズの定数ベクトルにスカラー引数を拡張します。

  • 単一の入力 Xnew1 を渡す場合、Xnew1 は table、データセット配列、または行列でなければなりません。

    • Xnew1 が table またはデータセット配列である場合、mdlPredictorNames プロパティと同じ予測子名をもつ予測子が含まれていなければなりません。

    • Xnew1 が行列である場合、mdl の作成に使用した予測子入力と同じ個数の変数 (列) が同じ順序で含まれていなければなりません。当てはめたモデルで予測子としては使用しなかった予測子変数も Xnew1 に含めなければならないことに注意してください。また、mdl の作成に使用する変数は、すべて数値でなければなりません。数値予測子をカテゴリカルとして扱うには、mdl を作成するときに名前と値のペアの引数 'CategoricalVars' を使用して予測子を指定します。

データ型: single | double | table

出力引数

すべて折りたたむ

Xnew1,Xnew2,...,Xnewn で予測した応答の値。数値ベクトルとして返されます。

二項モデルの場合、feval は 1 を BinomialSize パラメーターとして使用するため、ypred の値は予測確率です。試行の成功回数を返すには、関数 predict を使用し、名前と値のペアの引数 'BinomialSize' を使用して試行の回数を指定します。

オフセットのあるモデルの場合、feval はオフセット値として 0 を使用します。モデルを当てはめる際に使用するオフセット値を指定するには、関数 predict、および名前と値のペアの引数 'Offset' を使用します。

ヒント

  • 数学的な観点からは、回帰オブジェクトは応答と予測子の間の関係を推定する関数です。関数 feval を使用すると、MATLAB® の関数と同じようにオブジェクトを機能させることができます。関数入力を受け入れる別の関数 (fminsearchintegral など) に feval を渡すことができます。

  • table またはデータセット配列から作成したモデルを使用すると、feval をより簡単に使用できます。新しい予測子データがある場合、table または行列を作成せずに、その予測子データを feval に渡すことができます。

代替機能

  • predict の名前と値のペアの引数 'Offset''BinomialSize' に既定値を使用した場合、predict の予測結果は feval と同じになります。これらの引数に他の値を指定した場合、予測値は異なる場合があります。関数 predict は、予測に対する信頼区間も返します。関数 predict は、各予測子変数に 1 つの入力が対応する複数の入力引数ではなく、すべての予測子変数を格納する単一の入力引数を受け入れることに注意してください。

  • random は、ノイズが追加された状態で応答を予測します。

拡張機能

バージョン履歴

R2012a で導入