Main Content

plotResiduals

線形回帰モデルの残差プロット

説明

plotResiduals(mdl) は、線形回帰モデル (mdl) の残差のヒストグラム プロットを作成します。

plotResiduals(mdl,plottype) は、残差のプロット タイプ plottype を指定します。

plotResiduals(mdl,plottype,Name,Value) では、1 つ以上の名前と値のペアの引数を使用して追加オプションを指定します。たとえば、残差のタイプや、残差のデータ点のグラフィック プロパティを指定できます。

plotResiduals(ax,___) は、前の構文におけるいずれかの入力引数の組み合わせを使用して、現在の座標軸ではなく ax によって指定される座標軸にプロットを作成します。

h = plotResiduals(___) は、プロット内のラインまたはパッチに対するグラフィックス オブジェクトを返します。プロットの作成後に特定のラインまたはパッチのプロパティを修正するには、h を使用します。プロパティの一覧については、Line のプロパティ および Patch のプロパティ を参照してください。

すべて折りたたむ

当てはめた線形回帰モデルの残差のヒストグラムをプロットします。

carsmall データセットを読み込み、モデル年、重量、および重量の二乗の関数として、燃費の線形回帰モデルを当てはめます。

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

確率密度関数のスケールを使用して、生の残差のヒストグラムを作成します。

plotResiduals(mdl)

Figure contains an axes object. The axes object with title Histogram of residuals, xlabel Residuals, ylabel Probability density contains an object of type patch.

各バーの面積は、観測値の相対的な個数です。バーの面積の合計は 1 に等しくなります。

当てはめた線形回帰モデルの残差の正規確率プロットを作成します。

carsmall データセットを読み込み、モデル年、重量、および重量の二乗の関数として、燃費の線形回帰モデルを当てはめます。

load carsmall
X = [Weight,Model_Year];
mdl = fitlm(X,MPG,...
    'y ~ x2 + x1^2','Categorical',2);

当てはめたモデルの残差の正規確率プロットを作成します。

plotResiduals(mdl,'probability')

Figure contains an axes object. The axes object with title Normal probability plot of residuals, xlabel Residuals, ylabel Probability contains 2 objects of type line. One or more of the lines displays its values using only markers

入力引数

すべて折りたたむ

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

プロット タイプ。次の表のいずれかの値として指定します。

説明
'caseorder'残差とケース順 (行番号) の比較
'fitted'残差と近似値の比較
'histogram'確率密度関数のスケールを使用した、残差のヒストグラム。各バーの面積は、観測値の相対的な個数です。バーの面積の合計は 1 に等しくなります。
'lagged'残差とラグ付き残差の比較 (r(t) と r(t – 1))
'probability'残差の正規確率プロット。詳細については、probplotを参照してください。
'symmetry'メディアン周辺の残差の対称性プロット (上裾の残差から中央値を減算した値と中央値から下裾の残差を減算した値の比較)。このプロットには、残差の対称性を確認するための、y = x に対応する点線の基準線が含まれています。

ターゲットの座標軸。Axes オブジェクトを指定します。

現在の座標軸が直交である場合に座標軸が指定されなかった場合、plotResiduals は現在の座標軸 (gca) を使用します。Axes オブジェクトを作成する方法の詳細については、axesgca を参照してください。

名前と値の引数

オプションの引数のペアを Name1=Value1,...,NameN=ValueN として指定します。ここで Name は引数名、Value は対応する値です。名前と値の引数は他の引数の後ろにする必要がありますが、ペアの順序は関係ありません。

R2021a より前では、名前と値をそれぞれコンマを使って区切り、Name を引用符で囲みます。

例: 'Color','blue','Marker','o'

メモ

ここでは、グラフィック プロパティの一部だけを紹介しています。完全な一覧は、ラインについては Line のプロパティ、ヒストグラムについては Patch のプロパティ を参照してください。指定したプロパティは、残差のデータ点の外観またはヒストグラムの外観に適用されます。

プロットで使用する残差のタイプ。'ResidualType' と次のいずれかの値から構成されるコンマ区切りのペアとして指定します。

説明
'raw'観測した値から当てはめた値を減算した値
'pearson'生の残差を平方根平均二乗誤差 (RMSE) で除算した値
'standardized'推定標準偏差で除算した生の残差
'studentized'標準偏差の独立した (delete-1) 推定値で除算した生の残差

mdlResiduals プロパティには、plotResiduals がプロットの作成に使用した残差の値が格納されます。

詳細については、残差を参照してください。

例: 'ResidualType','Pearson'

ラインの色。'Color' と RGB 3 成分、16 進数のカラー コード、または、以下の表に記載されているいずれかの色オプションに対応する色の名前または省略名から構成されるコンマ区切りのペアとして指定します。

'MarkerEdgeColor''auto' (既定) であり 'MarkerFaceColor''auto' である場合、名前と値のペアの引数 'Color' はマーカーの輪郭の色とマーカーの塗りつぶし色も決定します。

カスタム色の場合は、RGB 3 成分または 16 進数のカラー コードを指定します。

  • RGB 3 成分は、色の赤、緑、青成分の強度を指定する 3 要素の行ベクトルです。強度は範囲 [0,1] に含まれていなければなりません。たとえば [0.4 0.6 0.7] のようになります。

  • 16 進数のカラー コードは、ハッシュ記号 (#) で始まり、0 から F の範囲にある 16 進数が 3 つまたは 6 つ続く、string スカラーまたは文字ベクトルです。この値では、大文字と小文字は区別されません。したがって、カラー コード "#FF8800""#ff8800""#F80""#f80" は等価です。

あるいは、一部の一般的な色を名前で指定できます。次の表は、名前が付いた色のオプション、等価な RGB 3 成分、および 16 進数のカラー コードの一覧です。

色の名前省略名RGB 3 成分16 進数のカラー コード外観
"red""r"[1 0 0]"#FF0000"

Sample of the color red

"green""g"[0 1 0]"#00FF00"

Sample of the color green

"blue""b"[0 0 1]"#0000FF"

Sample of the color blue

"cyan" "c"[0 1 1]"#00FFFF"

Sample of the color cyan

"magenta""m"[1 0 1]"#FF00FF"

Sample of the color magenta

"yellow""y"[1 1 0]"#FFFF00"

Sample of the color yellow

"black""k"[0 0 0]"#000000"

Sample of the color black

"white""w"[1 1 1]"#FFFFFF"

Sample of the color white

"none"該当なし該当なし該当なし色なし

以下は、MATLAB® が多くのタイプのプロットで使用する既定の色に対する RGB 3 成分および 16 進数のカラー コードです。

RGB 3 成分16 進数のカラー コード外観
[0 0.4470 0.7410]"#0072BD"

Sample of RGB triplet [0 0.4470 0.7410], which appears as dark blue

[0.8500 0.3250 0.0980]"#D95319"

Sample of RGB triplet [0.8500 0.3250 0.0980], which appears as dark orange

[0.9290 0.6940 0.1250]"#EDB120"

Sample of RGB triplet [0.9290 0.6940 0.1250], which appears as dark yellow

[0.4940 0.1840 0.5560]"#7E2F8E"

Sample of RGB triplet [0.4940 0.1840 0.5560], which appears as dark purple

[0.4660 0.6740 0.1880]"#77AC30"

Sample of RGB triplet [0.4660 0.6740 0.1880], which appears as medium green

[0.3010 0.7450 0.9330]"#4DBEEE"

Sample of RGB triplet [0.3010 0.7450 0.9330], which appears as light blue

[0.6350 0.0780 0.1840]"#A2142F"

Sample of RGB triplet [0.6350 0.0780 0.1840], which appears as dark red

例: 'Color','blue'

ラインの幅。'LineWidth' と正の値 (ポイント単位) から構成されるコンマ区切りのペアとして指定します。ラインにマーカーがある場合、ライン幅はマーカー エッジにも影響を与えます。

例: 'LineWidth',0.75

マーカー記号。'Marker' と次の表のいずれかの値から構成されるコンマ区切りのペアとして指定します。

マーカー説明結果として得られるマーカー
"o"

Sample of circle marker

"+"プラス記号

Sample of plus sign marker

"*"アスタリスク

Sample of asterisk marker

"."

Sample of point marker

"x"十字

Sample of cross marker

"_"水平線

Sample of horizontal line marker

"|"垂直線

Sample of vertical line marker

"square"正方形

Sample of square marker

"diamond"菱形

Sample of diamond marker

"^"上向き三角形

Sample of upward-pointing triangle marker

"v"下向き三角形

Sample of downward-pointing triangle marker

">"右向き三角形

Sample of right-pointing triangle marker

"<"左向き三角形

Sample of left-pointing triangle marker

"pentagram"星形五角形

Sample of pentagram marker

"hexagram"星形六角形

Sample of hexagram marker

"none"マーカーなし該当なし

例: 'Marker','+'

マーカーの輪郭の色。'MarkerEdgeColor' と RGB 3 成分、16 進数のカラー コード、または、名前と値のペアの引数 Color に記載されているいずれかの色オプションに対応する色の名前または省略名から構成されるコンマ区切りのペアとして指定します。

既定値 'auto' では、'Color' を使用して指定されるものと同じ色が使用されます。

例: 'MarkerEdgeColor','blue'

マーカーの塗りつぶし色。'MarkerFaceColor' と RGB 3 成分、16 進数のカラー コード、または、名前と値のペアの引数 Color に記載されているいずれかの色オプションに対応する色の名前または省略名から構成されるコンマ区切りのペアとして指定します。

'auto' では、'Color' を使用して指定されるものと同じ色が使用されます。

例: 'MarkerFaceColor','blue'

マーカー サイズ。'MarkerSize' と正の値 (ポイント単位) から構成されるコンマ区切りのペアとして指定します。

例: 'MarkerSize',2

出力引数

すべて折りたたむ

プロット内のラインまたはパッチに対応するグラフィックス オブジェクト。グラフィックス配列として返されます。グラフィックス オブジェクトのプロパティのクエリと設定を行うには、ドット表記を使用します。詳細については、Line のプロパティ および Patch のプロパティ を参照してください。

名前と値のペアの引数を使用して、1 番目のグラフィックス オブジェクト h(1) に対応する、残差のデータ点の外観またはヒストグラムの外観を指定できます。

ヒント

  • データ カーソルを使用すると、選択したプロットの点の値がデータ ヒント (データ点の横にある小さいテキスト ボックス) に表示されます。データ ヒントには、選択した点の x 軸および y 軸の値と、観測値の名前または番号が含まれます。

代替機能

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

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

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

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

拡張機能

バージョン履歴

R2012a で導入