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.mat

変数 CylindersMPG、および Weight には、各自動車のエンジンの気筒数、ガロンあたりの走行マイル数、および重量が格納されています。

関数categoricaltableを使用して、CylindersMPG、および Weight のデータから table を作成します。CylindersMPG を予測子、Weight を応答として使用して、一般化線形回帰モデルを当てはめます。

Cylinders = categorical(Cylinders);
tbl = table(Cylinders,MPG,Weight,VariableNames=["Cylinders" "MPG" "Weight"]);
mdl = fitglm(tbl,"Weight ~ MPG + Cylinders");

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

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

plotSlice(mdl)

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

Cylinders の値を 4 に変更します。

GeneralizedLinearModel.plotSlice.png

右のプロットから、MPG のすべての値にわたって、4 気筒の自動車の方が 6 気筒の自動車よりも Weight の値が相対的に小さいことがわかります。

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

load patients.mat

変数 AgeWeight、および Smoker には、各患者の年齢、体重、および喫煙状況のデータが格納されています。

関数tableを使用して、AgeWeight、および Smoker のデータから table を作成します。AgeWeight を予測子、Smoker を応答として使用して、一般化線形回帰モデルをデータに当てはめます。

tbl = table(Age,Weight,Smoker,VariableNames=["Age" "Weight" "Smoker"]);
mdl = fitglm(tbl,"Smoker ~ Age*Weight");

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

患者の年齢と体重についての新しい予測子データを生成します。

Age_New = 25:35;
Weight_New = 100:10:200;
Xnew = [Age_New; Weight_New]';

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

plotSlice(mdl,Xnew)

左のプロットは、Weight150 に固定して Age の関数として Smoker を示したものです。右のプロットは、Age30 に固定して Weight の関数として Smoker を示したものです。

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

load census

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

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

mdl = fitglm(cdate,pop);

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

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

plotSlice(mdl)

mdl に予測子が 1 つしかないため、スライス プロットには学習データの散布図を含む単一の座標軸のセットが表示されます。95% 信頼区間を表す影付きの領域と共に mdl の回帰線が赤で示されています。

入力引数

すべて折りたたむ

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

新しい予測子の入力値。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% の信頼度で含まれます。

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

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

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

代替機能

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

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

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

    • モデルを当てはめた後で、特定の予測子の効果を理解するには、plotPartialDependence を使用します。また、予測曲面を通るスライスをプロットするには、plotSlice を使用します。

拡張機能

バージョン履歴

R2012a で導入

すべて展開する