Main Content

feval

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

説明

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

すべて折りたたむ

カテゴリカル予測子 Year が含まれている carsmall データ セットに燃費モデルを当てはめます。このデータの散布図に近似曲線を重ね合わせます。

データ セットを読み込み、モデルを当てはめます。

load carsmall
tbl = table(MPG,Weight);
tbl.Year = categorical(Model_Year);
mdl = fitlm(tbl,'MPG ~ Year + Weight^2');

Year でグループ化した MPGWeight の散布図を作成します。

gscatter(tbl.Weight,tbl.MPG,tbl.Year,'rgb');

Figure contains an axes object. The axes object contains 3 objects of type line. One or more of the lines displays its values using only markers These objects represent 70, 76, 82.

feval を使用して、さまざまな年度および重量に対するモデル予測の曲線をプロットします。

w = linspace(min(tbl.Weight),max(tbl.Weight))';
line(w,feval(mdl,w,'70'),'Color','r')
line(w,feval(mdl,w,'76'),'Color','g')
line(w,feval(mdl,w,'82'),'Color','b')

Figure contains an axes object. The axes object contains 6 objects of type line. One or more of the lines displays its values using only markers These objects represent 70, 76, 82.

入力引数

すべて折りたたむ

線形回帰モデル オブジェクト。fitlm または stepwiselm を使用して作成した LinearModel オブジェクト、または compact を使用して作成した CompactLinearModel オブジェクトとして指定します。

新しい予測子の値。ベクトル、行列、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 を使用すると、MATLAB® の関数と同じようにオブジェクトを機能させることができます。関数入力を受け入れる別の関数 (fminsearchintegral など) に feval を渡すことができます。

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

代替機能

  • predict は、各予測子変数に 1 つの入力が対応する複数の入力引数ではなく、すべての予測子変数を格納する単一の入力引数を使用して、feval と同じ予測を行います。predict は、予測に対する信頼区間も返します。

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

拡張機能

バージョン履歴

R2012a で導入