Main Content

plotSlice

当てはめた線形回帰面を通るスライスのプロット

説明

plotSlice(mdl) は、mdl によって予測された回帰面を通るスライスをそれぞれが表す、1 つ以上のプロットが含まれている Figure を作成します。各プロットは、他の予測子変数の値を固定した状態で単一の予測子変数の関数として当てはめた応答値を示します。

plotSlice は、応答値の 95% 信頼限界も表示します。信頼限界のタイプを指定し、各スライス プロットに使用する予測子を選択できます。詳細については、ヒントを参照してください。

plotSlice(mdl,Xnew) は、Xnew の予測子データを使用して Figure を作成します。

plotSlice(fig,___) は、前の構文におけるいずれかの入力引数の組み合わせを使用して、現在の Figure (gcf) ではなく Figure fig にプロットします。 (R2024a 以降)

すべて折りたたむ

標本データ セット carsmall を読み込みます。

load carsmall

変数 WeightModel_Year には、自動車の重量と製造年のデータが格納されています。変数 MPG には、ガロンあたりの走行マイル数のデータが格納されています。

関数categoricaltableを使用して、WeightModel_Year、および MPG のデータから table を作成します。MPG の線形回帰モデルを Model_Year および Weight の関数として当てはめます。

Model_Year = categorical(Model_Year);
tbl = table(MPG,Weight,Model_Year);
mdl = fitlm(tbl,"MPG ~ Model_Year + Weight^2");

mdl は、線形回帰モデルをデータに当てはめた結果を含む LinearModel オブジェクトです。

mdl のスライス プロットを作成します。

plotSlice(mdl)

各プロットは MPG を単一の予測子変数の関数として示したものになります。左のプロットが Weight で、右のプロットが Model_Year です。予測子は各プロットの "x" 軸に表示された値で固定されています。連続予測子 Weight の 95% 信頼区間が青い影付きの領域で表されています。カテゴリカル予測子 Model_Year の 95% 信頼区間が誤差範囲で表されています。破線は選択された点を示し、選択された点の応答値と信頼限界がプロットの左にある表に表示されます。"x" 軸のラベルで予測子の値を変更するか、破線を別の位置にドラッグすると、別の点を選択できます。

Weight の値を 4000 に変更します。

linearmodel.plotSlice.png

右のプロットから、Model_Year のすべての値にわたって、重量が 4000 の自動車の方が重量が 3264 の自動車よりも MPG の値が相対的に小さいことがわかります。

標本データ セット carsmall を読み込みます。

load carsmall

変数 WeightModel_Year には、自動車の重量と製造年のデータが格納されています。変数 MPG には、ガロンあたりの走行マイル数のデータが格納されています。

関数categoricaltableを使用して、WeightModel_Year、および MPG のデータから table を作成します。MPG の線形回帰モデルを Model_Year および Weight の関数として当てはめます。

Model_Year = categorical(Model_Year);
tbl = table(MPG,Weight,Model_Year);
mdl = fitlm(tbl,"MPG ~ Model_Year + Weight^2");

mdl は、線形回帰モデルをデータに当てはめた結果を含む LinearModel オブジェクトです。

関数linspaceonesを使用して、自動車の重量と製造年についての新しい予測子データを生成します。

Weight_New = linspace(2500,3500,100)';
Model_Year_New = categorical([ones(50,1).*70; ones(50,1).*76]);
Xnew = table(Weight_New,Model_Year_New,VariableNames=["Weight","Model_Year"]);

新しい予測子データを使用して mdl のスライス プロットを作成します。

plotSlice(mdl,Xnew)

左のプロットは、Model_Year76 に固定して Weight の関数として MPG を示したものです。右のプロットは、Weight3000 に固定して Model_Year の関数として MPG を示したものです。[信頼区間のタイプ] のオプションは、信頼区間が同時であり、当てはめた応答に対するものであることを示しています。詳細については、ヒントを参照してください。

標本データ セット census を読み込みます。

load census

変数 popcdate には、人口の規模と国勢調査の実施年のデータがそれぞれ格納されています。

cdate を予測子、pop を応答として使用して、線形回帰モデルを当てはめます。

mdl = fitlm(cdate,pop);

mdl は、当てはめ後の線形回帰モデルを含む LinearModel オブジェクトです。

mdl のスライス プロットを作成します。

plotSlice(mdl)

mdl に予測子が 1 つしかないため、スライス プロットには学習データの散布図を含む単一の座標軸のセットが表示されます。95% 信頼区間を表す影付きの領域と共に mdl の回帰線が赤で示されています。[信頼区間のタイプ] のオプションは、信頼区間が同時であり、当てはめた応答に対するものであることを示しています。詳細については、ヒントを参照してください。

入力引数

すべて折りたたむ

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

新しい予測子の入力値。table または数値行列として指定します。Xnew が table の場合、その列は mdl.VariableNames の予測子と同じ名前でなければなりません。Xnew が行列の場合、その列は mdl.VariableNames の予測子に対応していなければなりません。学習時に使用されていないカテゴリカル予測子の値を Xnew に含めることはできません。

データ型: single | double | table

R2024a 以降

ターゲットの Figure。Figure オブジェクトとして指定します。fig は関数 uifigure を使用して作成する必要があります。fig を指定しない場合、plotSlice は新しい Figure を作成します。

ヒント

  • 信頼限界のタイプを選択するには、Figure ウィンドウの [信頼区間のタイプ] メニューを使用します。同時か非同時かを選択し、曲線か観測値かを選択できます。

    • [同時] または [非同時]

      • 同時 (既定) — plotSlice は、シェッフェの方法を使用して、応答値の曲線の信頼限界を計算します。信頼限界の上限と下限の間の範囲には、真の応答値から構成される曲線が 95% の信頼度で含まれます。

      • 非同時plotSlice は、各観測値で応答値の信頼限界を計算します。特定の予測子の値における応答値の信頼区間には、真の応答値が 95% の信頼度で含まれます。

      応答値の曲線全体を範囲内に含める方が、単一の予測子の値における応答値を範囲内に含める場合より条件が厳しいので、同時区間は個別の区間より広くなります。

      プロットに信頼限界を表示しない場合は、[プロットに信頼区間を表示] チェック ボックスをオフにできます。

    • [曲線] または [観測値]

      予測子変数 X と応答変数 y に対する回帰モデルは、次の形式になります。

      y = f(X) + ε,

      ここで、f は X の関数、ε はランダムなノイズ項です。

      • 曲線 (既定) — plotSlice は、当てはめた応答 f(X) に対して信頼限界を予測します。

      • 観測値plotSlice は、応答観測値 y に対して信頼限界を予測します。

      ノイズ項により変動性が追加されるので、y の範囲は f(X) の範囲より広くなります。

  • 各スライス プロットに使用する予測子を選択するには、[予測子] メニューを使用します。8 つを超える予測子が回帰モデル mdl に含まれている場合、既定では plotSlice は最初の 5 つの予測子に対してプロットを作成します。

代替機能

  • 予測された応答値と信頼限界を取得するには、predict を使用します。関数 predict の名前と値のペアの引数 'Alpha' を使用して、信頼限界の信頼水準を指定することもできます。predict が既定では非同時区間を求めるのに対して、plotSlice は既定では同時区間を求めることに注意してください。

  • LinearModel オブジェクトには、複数のプロット関数が用意されています。

    • モデルを作成するときに、予測子変数の追加または削除による効果を理解するには、plotAdded を使用します。

    • モデルを検証するときに、問題があるデータを探し、各観測値の効果を理解するには、plotDiagnostics を使用します。また、モデルの残差を分析するには、plotResiduals を使用します。

    • モデルを当てはめた後で、特定の予測子の効果を理解するには、plotAdjustedResponseplotPartialDependence および plotEffects を使用します。2 つの予測子の間の交互作用効果を理解するには、plotInteraction を使用します。また、予測曲面を通るスライスをプロットするには、plotSlice を使用します。

拡張機能

バージョン履歴

R2012a で導入

すべて展開する