メインコンテンツ

plotAdded

線形回帰モデルの追加変数プロット

説明

plotAdded(mdl) は、定数 (切片) 項を除くモデル mdl 全体に対する追加変数プロットを作成します。

plotAdded(mdl,coef) は、指定された項 coef に対する追加変数プロットを作成します。

plotAdded(mdl,coef,Name,Value) は、1 つ以上の名前と値のペアの引数を使用して、調整されたデータ点のグラフィック プロパティを指定します。たとえば、データ点のマーカー記号やサイズを指定できます。

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

h = plotAdded(___) は、プロット用の line オブジェクトを返します。プロットの作成後に特定のラインのプロパティを修正するには、h を使用します。プロパティの一覧については、Line のプロパティを参照してください。

すべて折りたたむ

自動車の燃費の線形回帰モデルを重量とモデル年の関数として作成します。次に、追加変数プロットを作成して、モデルの有意性を確認します。

carsmall データ セットから燃費の線形回帰モデルを作成します。

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

モデルの追加変数プロットを作成します。

plot(mdl)

Figure contains an axes object. The axes object with title Added Variable Plot for Whole Model, xlabel Adjusted Whole Model, ylabel Adjusted MPG contains 3 objects of type line. One or more of the lines displays its values using only markers These objects represent Adjusted data, Fit: y = 8.44866*x, 95% conf. bounds.

水平線が信頼限界の間に収まっていないので、このプロットはモデルが有意であることを示しています。

関数 plotAdded を使用して、同じプロットを作成します。

plotAdded(mdl)

Figure contains an axes object. The axes object with title Added Variable Plot for Whole Model, xlabel Adjusted Whole Model, ylabel Adjusted MPG contains 3 objects of type line. One or more of the lines displays its values using only markers These objects represent Adjusted data, Fit: y = 8.44866*x, 95% conf. bounds.

自動車の燃費の線形回帰モデルを重量とモデル年の関数として作成します。次に、追加変数プロットを作成して、重み付けの項 (Weight および Weight^2) の効果を確認します。

carsmall データ セットを使用して、線形回帰モデルを作成します。

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

WeightWeight^2 に対応するモデル内の項を探します。

mdl.CoefficientNames
ans = 1×5 cell
    {'(Intercept)'}    {'Weight'}    {'Year_76'}    {'Year_82'}    {'Weight^2'}

重み付けの項は 2 と 5 です。

重み付けの項を使用して追加変数プロットを作成します。

coef = [2 5];
plotAdded(mdl,coef)

Figure contains an axes object. The axes object with title Added Variable Plot for Specified Terms, xlabel Adjusted Specified Terms, ylabel Adjusted MPG contains 3 objects of type line. One or more of the lines displays its values using only markers These objects represent Adjusted data, Fit: y = 0.0164036*x, 95% conf. bounds.

水平線が信頼限界の間に収まっていないので、このプロットは重みの項が有意であることを示しています。

単純な線形回帰モデルに対して、近似曲線と信頼限界が含まれているデータの散布図を作成します。単純な線形回帰モデルには、1 つの予測子変数のみを含めます。

carsmall データ セットから燃費の単純な線形回帰モデルを作成します。

load carsmall
tbl = table(MPG,Weight);
mdl = fitlm(tbl,'MPG ~ Weight')
mdl = 
Linear regression model:
    MPG ~ 1 + Weight

Estimated Coefficients:
                    Estimate        SE         tStat       pValue  
                   __________    _________    _______    __________

    (Intercept)        49.238       1.6411     30.002    2.7015e-49
    Weight         -0.0086119    0.0005348    -16.103    1.6434e-28


Number of observations: 94, Error degrees of freedom: 92
Root Mean Squared Error: 4.13
R-squared: 0.738,  Adjusted R-Squared: 0.735
F-statistic vs. constant model: 259, p-value = 1.64e-28

変数 WeightpValue は非常に小さいので、この変数がモデル内で統計的に有意であることがわかります。関数 plot を使用して近似曲線と 95% 信頼限界が含まれているデータの散布図を作成することにより、この結果を可視化します。

plot(mdl)

Figure contains an axes object. The axes object with title MPG vs. Weight, xlabel Weight, ylabel MPG contains 3 objects of type line. One or more of the lines displays its values using only markers These objects represent Data, Fit, 95% conf. bounds.

水平線が信頼限界の間に収まらないので、このプロットはモデルが有意であることを示しています。これは pValue の結果と一致します。

関数 plotAdded を使用して、同じプロットを作成します。

plotAdded(mdl)

Figure contains an axes object. The axes object with title Added Variable Plot for Weight, xlabel Adjusted Weight, ylabel Adjusted MPG contains 3 objects of type line. One or more of the lines displays its values using only markers These objects represent Adjusted data, Fit: y = -0.00861193*x, 95% conf. bounds.

定数項と 1 つの項のみがモデルに含まれている場合、調整された値は元の値と同じです。したがって、この追加変数プロットは、関数 plot で作成した散布図と同じです。

入力引数

すべて折りたたむ

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

回帰モデル mdl の係数。次のいずれかを指定します。

  • mdl.CoefficientNames (mdlCoefficientNames プロパティ) 内の単一の係数名を表す文字ベクトルまたは string スカラー。

  • mdl.CoefficientNames 内の係数のインデックスを表す正の整数のベクトル。ベクトルを使用して、複数の係数を指定します。

データ型: char | string | single | double

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

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

名前と値の引数

すべて折りたたむ

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

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

例: 'Color','blue','Marker','*'

メモ

ここでは、グラフィック プロパティの一部だけを紹介しています。完全な一覧については、Line のプロパティ を参照してください。指定したプロパティによって、調整されたデータ点の外観が決まります。

ラインの色。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"該当なし該当なし該当なし色なし

次の表に、ライト テーマとダーク テーマのプロット用の既定のカラー パレットを示します。

パレットパレットの色

"gem" — ライト テーマの既定の設定

R2025a より前: ほとんどのプロットでは、これらの色が既定で使用されます。

Sample of the "gem" color palette

"glow" — ダーク テーマの既定の設定

Sample of the "glow" color palette

これらのパレットの RGB 3 成分と 16 進数カラー コードは、orderedcolors 関数と rgb2hex 関数を使用して取得できます。たとえば、"gem" パレットの RGB 3 成分を取得し、それらを 16 進数カラー コードに変換します。

RGB = orderedcolors("gem");
H = rgb2hex(RGB);

R2023b より前: RGB = get(groot,"FactoryAxesColorOrder") を使用して RGB 3 成分を取得します。

R2024a より前: H = compose("#%02X%02X%02X",round(RGB*255)) を使用して 16 進数カラー コードを取得します。

例: Color="blue"

データ型: single | double | string | char

ラインの幅。ポイント単位の正の値として指定します。ラインにマーカーがある場合、ライン幅はマーカー エッジにも影響を与えます。

例: LineWidth=0.75

データ型: single | double

マーカー記号。次の表のいずれかの値として指定します。

マーカー説明結果として得られるマーカー
"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="+"

データ型: string | char

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

既定値 "auto" では、名前と値の引数 Color を使用して指定されるものと同じ色が使用されます。色なしとして "none" を指定することもできます。

例: MarkerEdgeColor="blue"

データ型: single | double | string | char

マーカーの塗りつぶしの色。RGB 3 成分、16 進数カラー コード、あるいは名前と値の引数 Color に記載されているいずれかの色オプションに対応する色の名前または省略名として指定します。既定値の "none" は色なしを指定します。

"auto" では、名前と値の引数 Color を使用して指定されるものと同じ色が使用されます。

例: MarkerFaceColor="blue"

データ型: single | double | string | char

マーカーのサイズ。ポイント単位の正の値として指定します。

例: MarkerSize=2

データ型: single | double

出力引数

すべて折りたたむ

line オブジェクト。3 行 1 列のベクトルとして返されます。h(1)h(2)h(3) はそれぞれ、調整されたデータ点、近似直線、近似直線の 95% 信頼限界に対応します。line オブジェクトのプロパティのクエリと設定を行うには、ドット表記を使用します。詳細については、Line のプロパティ を参照してください。

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

詳細

すべて折りたたむ

ヒント

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

代替機能

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

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

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

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

  • plotAdded は、他の項の効果を排除すると、指定した項が応答に与える効果がどの程度増加するかを示します。これに対して plotAdjustedResponse は、当てはめた値の平均を求めることにより他の予測子を平均化して、モデルの当てはめにおける選択した予測子の効果を示します。plotAddedplotAdjustedResponse では調整された値の定義が異なることに注意してください。

拡張機能

すべて展開する

バージョン履歴

R2012a で導入