plotAdded
線形回帰モデルの追加変数プロット
構文
説明
plotAdded(
は、1 つ以上の名前と値のペアの引数を使用して、調整されたデータ点のグラフィック プロパティを指定します。たとえば、データ点のマーカー記号やサイズを指定できます。mdl
,coef
,Name,Value
)
plotAdded(
は、前の構文におけるいずれかの入力引数の組み合わせを使用して、現在の座標軸ではなく ax
,___)ax
によって指定される座標軸にプロットを作成します。
は、プロット用の line オブジェクトを返します。プロットの作成後に特定のラインのプロパティを修正するには、h
= plotAdded(___)h
を使用します。プロパティの一覧については、Line のプロパティを参照してください。
例
追加変数プロットの作成
自動車の燃費の線形回帰モデルを重量とモデル年の関数として作成します。次に、追加変数プロットを作成して、モデルの有意性を確認します。
carsmall
データ セットから燃費の線形回帰モデルを作成します。
load carsmall Year = categorical(Model_Year); tbl = table(MPG,Weight,Year); mdl = fitlm(tbl,'MPG ~ Year + Weight^2');
モデルの追加変数プロットを作成します。
plot(mdl)
水平線が信頼限界の間に収まっていないので、このプロットはモデルが有意であることを示しています。
関数 plotAdded
を使用して、同じプロットを作成します。
plotAdded(mdl)
指定した変数に対する追加変数プロットの作成
自動車の燃費の線形回帰モデルを重量とモデル年の関数として作成します。次に、追加変数プロットを作成して、重み付けの項 (Weight
および Weight^2
) の効果を確認します。
carsmall
データ セットを使用して、線形回帰モデルを作成します。
load carsmall Year = categorical(Model_Year); tbl = table(MPG,Weight,Year); mdl = fitlm(tbl,'MPG ~ Year + Weight^2');
Weight
と Weight^2
に対応するモデル内の項を探します。
mdl.CoefficientNames
ans = 1x5 cell
{'(Intercept)'} {'Weight'} {'Year_76'} {'Year_82'} {'Weight^2'}
重み付けの項は 2 と 5 です。
重み付けの項を使用して追加変数プロットを作成します。
coef = [2 5]; plotAdded(mdl,coef)
水平線が信頼限界の間に収まっていないので、このプロットは重みの項が有意であることを示しています。
単純な線形回帰の散布図の作成
単純な線形回帰モデルに対して、近似曲線と信頼限界が含まれているデータの散布図を作成します。単純な線形回帰モデルには、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
変数 Weight
の pValue
は非常に小さいので、この変数がモデル内で統計的に有意であることがわかります。関数 plot
を使用して近似曲線と 95% 信頼限界が含まれているデータの散布図を作成することにより、この結果を可視化します。
plot(mdl)
水平線が信頼限界の間に収まらないので、このプロットはモデルが有意であることを示しています。これは pValue
の結果と一致します。
関数 plotAdded
を使用して、同じプロットを作成します。
plotAdded(mdl)
定数項と 1 つの項のみがモデルに含まれている場合、調整された値は元の値と同じです。したがって、この追加変数プロットは、関数 plot
で作成した散布図と同じです。
入力引数
mdl
— 線形回帰モデル
LinearModel
オブジェクト
線形回帰モデル。fitlm
または stepwiselm
を使用して作成した LinearModel
オブジェクトとして指定します。
coef
— 回帰モデルの係数
文字ベクトル | string スカラー | 正の整数のベクトル
回帰モデル mdl
の係数。次のいずれかを指定します。
mdl.CoefficientNames
(mdl
のCoefficientNames
プロパティ) 内の単一の係数名を表す文字ベクトルまたは string スカラー。mdl.CoefficientNames
内の係数のインデックスを表す正の整数のベクトル。ベクトルを使用して、複数の係数を指定します。
データ型: char
| string
| single
| double
名前と値の引数
オプションの引数のペアを Name1=Value1,...,NameN=ValueN
として指定します。ここで Name
は引数名、Value
は対応する値です。名前と値の引数は他の引数の後ろにする必要がありますが、ペアの順序は関係ありません。
R2021a より前では、名前と値をそれぞれコンマを使って区切り、Name
を引用符で囲みます。
例: 'Color','blue','Marker','*'
メモ
ここでは、グラフィック プロパティの一部だけを紹介しています。完全な一覧については、Line のプロパティ を参照してください。指定したプロパティによって、調整されたデータ点の外観が決まります。
Color
— ラインの色
RGB 3 成分 | 16 進数のカラー コード | 色の名前 | 省略名
ラインの色。'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" | |
"green" | "g" | [0 1 0] | "#00FF00" | |
"blue" | "b" | [0 0 1] | "#0000FF" | |
"cyan" | "c" | [0 1 1] | "#00FFFF" | |
"magenta" | "m" | [1 0 1] | "#FF00FF" | |
"yellow" | "y" | [1 1 0] | "#FFFF00" | |
"black" | "k" | [0 0 0] | "#000000" | |
"white" | "w" | [1 1 1] | "#FFFFFF" | |
"none" | 該当なし | 該当なし | 該当なし | 色なし |
以下は、MATLAB® が多くのタイプのプロットで使用する既定の色に対する RGB 3 成分および 16 進数のカラー コードです。
RGB 3 成分 | 16 進数のカラー コード | 外観 |
---|---|---|
[0 0.4470 0.7410] | "#0072BD" | |
[0.8500 0.3250 0.0980] | "#D95319" | |
[0.9290 0.6940 0.1250] | "#EDB120" | |
[0.4940 0.1840 0.5560] | "#7E2F8E" | |
[0.4660 0.6740 0.1880] | "#77AC30" | |
[0.3010 0.7450 0.9330] | "#4DBEEE" | |
[0.6350 0.0780 0.1840] | "#A2142F" |
例: 'Color','blue'
LineWidth
— ラインの幅
正の値
ラインの幅。'LineWidth'
と正の値 (ポイント単位) から構成されるコンマ区切りのペアとして指定します。ラインにマーカーがある場合、ライン幅はマーカー エッジにも影響を与えます。
例: 'LineWidth',0.75
Marker
— マーカー記号
'o'
| '+'
| '*'
| '.'
| 'x'
| ...
マーカー記号。'Marker'
と次の表のいずれかの値から構成されるコンマ区切りのペアとして指定します。
マーカー | 説明 | 結果として得られるマーカー |
---|---|---|
"o" | 円 |
|
"+" | プラス記号 |
|
"*" | アスタリスク |
|
"." | 点 |
|
"x" | 十字 |
|
"_" | 水平線 |
|
"|" | 垂直線 |
|
"square" | 正方形 |
|
"diamond" | 菱形 |
|
"^" | 上向き三角形 |
|
"v" | 下向き三角形 |
|
">" | 右向き三角形 |
|
"<" | 左向き三角形 |
|
"pentagram" | 星形五角形 |
|
"hexagram" | 星形六角形 |
|
"none" | マーカーなし | 該当なし |
例: 'Marker','+'
MarkerEdgeColor
— マーカーの輪郭の色
'auto'
(既定値) | 'none'
| RGB 3 成分 | 16 進数のカラー コード | 色の名前 | 省略名
マーカーの輪郭の色。'MarkerEdgeColor'
と RGB 3 成分、16 進数のカラー コード、または、名前と値のペアの引数 Color
に記載されているいずれかの色オプションに対応する色の名前または省略名から構成されるコンマ区切りのペアとして指定します。
既定値 'auto'
では、'Color'
を使用して指定されるものと同じ色が使用されます。
例: 'MarkerEdgeColor','blue'
MarkerFaceColor
— マーカーの塗りつぶし色
'none'
(既定値) | 'auto'
| RGB 3 成分 | 16 進数のカラー コード | 色の名前 | 省略名
マーカーの塗りつぶし色。'MarkerFaceColor'
と RGB 3 成分、16 進数のカラー コード、または、名前と値のペアの引数 Color
に記載されているいずれかの色オプションに対応する色の名前または省略名から構成されるコンマ区切りのペアとして指定します。
値 'auto'
では、'Color'
を使用して指定されるものと同じ色が使用されます。
例: 'MarkerFaceColor','blue'
MarkerSize
— マーカー サイズ
6
(既定値) | 正の値
マーカー サイズ。'MarkerSize'
と正の値 (ポイント単位) から構成されるコンマ区切りのペアとして指定します。
例: 'MarkerSize',2
出力引数
h
— line オブジェクト
ベクトル
line オブジェクト。3 行 1 列のベクトルとして返されます。h(1)
、h(2)
、h(3)
はそれぞれ、調整されたデータ点、近似直線、近似直線の 95% 信頼限界に対応します。line オブジェクトのプロパティのクエリと設定を行うには、ドット表記を使用します。詳細については、Line のプロパティ を参照してください。
名前と値のペアの引数を使用して、1 番目のグラフィックス オブジェクト h(1)
に対応する、調整されたデータ点の外観を指定できます。
詳細
追加変数プロット
追加変数プロット (偏回帰のてこ比のプロットとも呼ばれます) は、他のすべての項の効果を排除すると、指定した項が応答に与える効果がどの程度増加するかを示します。
単一の予測子変数に対応する単一の項を選択して plotAdded
で作成した追加変数プロットには、以下のプロットが含まれます。
調整された予測子変数の値に対する調整された応答値の散布図
調整された予測子変数の値の関数としての、調整された応答値の近似直線
近似直線の 95% 信頼限界
調整された値は、選択した予測子を除くすべての予測子に当てはめた変数の残差を変数の平均値に加算した値です。たとえば、1 番目の予測子変数 x1 に対する追加変数プロットを考えます。次のようにして、x1 を除くすべての予測子に、応答変数 y および選択した予測子変数 x1 を当てはめます。
yi = gy(x2i, x3i, …, xpi) + ryi,
x1i = gx(x2i, x3i, …, xpi) + rxi,
ここで、gy と gx はそれぞれ、選択した予測子 (x1) を除くすべての予測子に対する y および x1 の当てはめです。ry と rx は、対応する残差ベクトルです。添字 i は、観測値の番号に対応します。調整された値は、各観測値の残差と平均値の合計です。
ここで、 と はそれぞれ x1 および y の平均を表します。
plotAdded
は、(, ) の散布図、 の関数としての の近似直線 (つまり )、および近似直線の 95% 信頼限界をプロットします。係数 β1 は、すべての予測子が含まれている完全なモデルにおける x1 の係数推定値と同じです。
ryi は、応答値の中で (x1 を除く) 予測子では説明できない部分を表します。rxi は、x1 の値の中で他の予測子では説明できない部分を表します。したがって、近似直線は、x1 を追加することによって導入される新しい情報が、応答値の説明できない部分をどのように説明できるかを表します。近似直線の勾配がゼロに近く、信頼限界に水平線を含めることができる場合、プロットは x1 による新しい情報によっても応答値の説明できない部分を説明できないことを示します。つまり、x1 はモデルの当てはめにおいて有意ではありません。
plotAdded
は、単一の項ではなく複数の項を選択できる、追加変数プロットの拡張機能もサポートします。したがって、カテゴリカル予測子、特定の予測子に関係するすべての項、または (定数 (切片) 項を除く) モデル全体も指定できます。係数ベクトル β をもつ予測子の集合 X を考えます。ここで、i 番目の係数を追加変数プロットに対して指定した場合、βi は完全なモデルにおける xi の係数推定値です。それ以外の場合、βi はゼロです。単位方向ベクトル u を u = β/s として定義します。ここで、s = norm(β) です。すると、Xβ = (Xu)s になります。係数 s をもつ単一の予測子として Xu を扱い、単一の項に対してプロットを作成する場合と同じ方法で Xu に対する追加変数プロットを作成します。この追加変数プロットにおける近似直線の係数は、s に対応します。
ヒント
データ カーソルを使用すると、選択したプロットの点の値がデータ ヒント (データ点の横にある小さいテキスト ボックス) に表示されます。データ ヒントには、選択した点の x 軸および y 軸の値と、観測値の名前または番号が含まれます。
代替機能
LinearModel
オブジェクトには、複数のプロット関数が用意されています。モデルを作成するときに、予測子変数の追加または削除による効果を理解するには、
plotAdded
を使用します。モデルを検証するときに、問題があるデータを探し、各観測値の効果を理解するには、
plotDiagnostics
を使用します。また、モデルの残差を分析するには、plotResiduals
を使用します。モデルを当てはめた後で、特定の予測子の効果を理解するには、
plotAdjustedResponse
、plotPartialDependence
およびplotEffects
を使用します。2 つの予測子の間の交互作用効果を理解するには、plotInteraction
を使用します。また、予測曲面を通るスライスをプロットするには、plotSlice
を使用します。
plotAdded
は、他の項の効果を排除すると、指定した項が応答に与える効果がどの程度増加するかを示します。これに対してplotAdjustedResponse
は、近似値の平均を求めることにより他の予測子を平均化して、モデルの当てはめにおける選択した予測子の効果を示します。plotAdded
とplotAdjustedResponse
では調整された値の定義が異なることに注意してください。
拡張機能
GPU 配列
Parallel Computing Toolbox™ を使用してグラフィックス処理装置 (GPU) 上で実行することにより、コードを高速化します。
この関数は、GPU 配列を完全にサポートします。詳細は、GPU での MATLAB 関数の実行 (Parallel Computing Toolbox)を参照してください。
バージョン履歴
R2012a で導入
MATLAB コマンド
次の MATLAB コマンドに対応するリンクがクリックされました。
コマンドを MATLAB コマンド ウィンドウに入力して実行してください。Web ブラウザーは MATLAB コマンドをサポートしていません。
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)