Main Content

regstats

回帰診断

構文

regstats(y,X,model)
stats = regstats(...)
stats = regstats(y,X,model,whichstats)

説明

regstats(y,X,model) は、X の予測子で y の応答の多線形回帰を実行します。X は、n 個の各観測で p 予測子の、np 列の行列です。y は、観測された応答の n 行 1 列のベクトルです。

メモ

既定の設定では、regstats は、モデルの定数項に対応する最初の複数の 1 の列を X に追加します。X に数値 1 だけを続けた列を直接入力しないでください。

オプションの入力引数 model は、回帰モデルを制御します。既定の設定では、regstats は定数項がある線形加法モデルを使用します。model は、以下のいずれかです。

  • 'linear' — 定数と線形項 (既定の設定)

  • 'interaction' — 定数項、線形項および交互作用項

  • 'quadratic' — 定数項、線形項、交互作用項および 2 乗項

  • 'purequadratic' — 定数項、線形項および 2 乗項

または、model は、関数 x2fx によって受け入れられたモデル項の行列です。この行列についての説明と項が現れる順序の説明は、x2fx を参照してください。定数項のないものを含む他のモデルを指定するには、この行列を使用できます。

次の図のように、この構文では、関数は診断統計量のリストと共にグラフィカル ユーザー インターフェイス (GUI) を表示します。

Regstats Export to Workspace window. The window displays a list of diagnostic statistics beside check the boxes. OK, Cancel, and Help buttons are located below the list.

計算したい統計量に対応するチェック ボックスを選択して、[OK] をクリックすると、regstats は選択された統計量を MATLAB® ワークスペースに返します。ワークスペース変数の名前はインターフェイスの右側に表示されます。ワークスペース変数の名前は、有効な MATLAB 変数名に変更できます。

stats = regstats(...) は、フィールドが回帰の診断統計量のすべてを含む stats 構造体を作成します。この構文では、GUI は開きません。stats のフィールドを次の表に示します。

フィールド説明
Q計画行列の QR 分解の Q
R計画行列の QR 分解の R
beta回帰係数
covb回帰係数の共分散
yhat応答データの近似値
r残差
mse平均二乗誤差
rsquareR2 統計量
adjrsquare自由度調整済み R2 統計量
leverageてこ比
hatmatハット行列
s2_i1 標本を取り除いたときの分散
beta_i1標本を取り除いたときの回帰係数
standres標準化された残差
studresスチューデント化残差
dfbetas回帰係数のスケールされた変更
dffit近似値の変化
dffits近似値のスケール変化
covratio共分散の変化
cookdクックの距離
tstatt 統計量と係数の p 値
fstatF 統計量と p 値
dwstatダービン・ワトソン統計量と p 値

stats のフィールド名は、GUI を使用している場合に MATLAB のワークスペースに返される変数の名前に対応しています。たとえば、stats.beta は、GUI で [係数] を選択して [OK] をクリックすると返される変数 beta に対応しています。

stats = regstats(y,X,model,whichstats) は、whichstats で指定された統計量のみを返します。whichstats は、単一の文字ベクトル ('leverage' など)、string 配列 (["leverage","standres","studres"] など)、または文字ベクトルの cell 配列 ({'leverage','standres','studres'} など) です。whichstats'all' に設定し、すべての統計量を返します。

メモ

F 統計量は、モデルが定数項を含むという推測のもとに計算されます。定数をもたないモデルは正しくありません。R2 統計量は、定数のないモデルに対しては負の数になります。つまり、モデルがそのデータに対して適切でないことを示しています。

hald.mat のデータを使用して、regstats GUI を開きます。

load hald
regstats(heat,ingredients,'linear');

GUI の [近似値][残差] を選択します。

Close up of the regstats GUI. Check boxes are located next to input fields for fitted values and residuals.

[OK] をクリックして近似値と残差をそれぞれ yhatr という名前の変数の MATLAB ワークスペースにエクスポートします。

GUI を開かずに stats 出力を使用して、同じ変数を作成できます。

whichstats = {'yhat','r'};
stats = regstats(heat,ingredients,'linear',whichstats);
yhat = stats.yhat;
r = stats.r;

ヒント

  • regstats は、X または y 内の NaN 値を欠損値として扱います。regstats は、欠損値がある観測値を回帰近似から省略します。

参考文献

[1] Belsley, D. A., E. Kuh, and R. E. Welsch. Regression Diagnostics. Hoboken, NJ: John Wiley & Sons, Inc., 1980.

[2] Chatterjee, S., and A. S. Hadi. “Influential Observations, High Leverage Points, and Outliers in Linear Regression.” Statistical Science. Vol. 1, 1986, pp. 379–416.

[3] Cook, R. D., and S. Weisberg. Residuals and Influence in Regression. New York: Chapman & Hall/CRC Press, 1983.

[4] Goodall, C. R. “Computation Using the QR Decomposition.” Handbook in Statistics. Vol. 9, Amsterdam: Elsevier/North-Holland, 1993.

バージョン履歴

R2006a より前に導入