メインコンテンツにスキップ
MedCalc

重み付き回帰 - 計算例

不均一分散の問題

回帰分析における不均一分散とは、従属変数(Y)の分散が独立変数(X)の水準によって異なる状況を指します。回帰分析は独立変数の水準にかかわらず分散が等しいという仮定に基づいているため、不均一分散があると分析が複雑になることがあります。

等分散性を示す散布図 不均一分散を示す散布図。
等分散性 不均一分散

不均一分散を補正するには、重み付き回帰を使用できます。重み付き回帰の手順では、分散の小さい観測値に大きな重みが与えられます。これらの観測値は、分散の大きい観測値よりも回帰関数について信頼性の高い情報をもたらすためです。

Neter ら(1996)は、不均一分散がある場合に回帰係数を推定するための次の手順を提案しています。

  1. 重みなし最小二乗法で回帰モデルを当てはめ、残差を分析します。
  2. 残差の二乗または残差の絶対値を適切な予測変数に回帰させて、分散関数または標準偏差関数を推定します。
  3. 推定した分散関数または標準偏差関数の当てはめ値を使用して、重み wi を求めます。
  4. これらの重みを使用して回帰係数を推定します。

自動で行う方法

回帰のダイアログボックスで「重み」にダミー変数 "*** AutoWeight 1/SD^2 ***" を選択すると、MedCalc はこれらのステップを自動的に実行します。

MedCalc で各ステップを実行する方法

1 つ以上のステップに変更を加える必要があるなど、プロセスをより細かく制御したい場合は、MedCalc の重み付き回帰やその他のツールを使用して、これらの各ステップを実行できます。

このプロセスを以下で詳しく説明します。

この例のデータは、MedCalc のサンプルファイルフォルダーにあるファイル「Weighted regression (Neter).mc1」で入手できます。このファイルには、54 人の被験者から収集した Age(年齢)と Diastolic blood pressure(拡張期血圧、DBP)のデータが含まれています。

重み付き回帰の例のデータ

出典

ステップ 1:重みなし最小二乗法で回帰モデルを当てはめ、残差を分析する

統計メニューの回帰をクリックし、ダイアログボックスに次のように入力します。

回帰のダイアログボックス(重み付き回帰の例)

変数Y(従属変数)は DBP(拡張期血圧)、変数X(独立変数)は Age です。

この最初のステップでは通常の重みなし最小二乗回帰を行うため、「重み」には変数を選択しません。

次の結果が得られます。

回帰の結果(重み付き回帰の例)

結果ウィンドウで「残差を保存」ハイパーリンクをクリックして、残差をスプレッドシートの新しい列に保存します。

残差とは、従属変数 DBP の観測値と、回帰式を使用して計算した値との差です。

残差を保存(重み付き回帰の例)

次のダイアログボックスで OK をクリックします。

残差を保存(重み付き回帰の例)

これにより、残差を含む新しい列(変数「REGR_Resid1」)がスプレッドシートに作成されます。

残差を保存(重み付き回帰の例)

ステップ 2:分散関数または標準偏差関数を推定する

このステップでは、Age に対する標準偏差の回帰モデルを構築します。残差の絶対値は Age のさまざまな値における DBP の標準偏差の推定量となるため、残差の絶対値を Age に回帰させます。

統計メニューの回帰をクリックし、ダイアログボックスに次のように入力します。

回帰のダイアログボックス(重み付き回帰の例)

変数Y には、まず新しい変数 "REGR_Resid1" を選択し、次に選択内容を編集して変数を "abs(REGR_Resid1)" に変更します。

次の結果が得られます。

回帰の結果(重み付き回帰の例)

ステップ 3:推定した分散関数または標準偏差関数の当てはめ値を使用して重みを求める

直前の結果ウィンドウで「予測値を保存」ハイパーリンクをクリックして、予測値をスプレッドシートの新しい列に保存します。

予測値を保存

次のダイアログボックスで OK をクリックします。

予測値を保存

これにより、標準偏差の予測値(推定値)を含む新しい列(変数「REGR_Pred1」)がスプレッドシートに作成されます。

スプレッドシートに保存された予測値

ステップ 4:これらの重みを使用して回帰係数を推定する

最後に、重み付き回帰モデルを構築します。

重みには、標準偏差の予測値の二乗の逆数を使用します(分散は標準偏差の二乗です)。標準偏差の大きい観測値には、標準偏差の小さい観測値よりも小さい重みが与えられます。

重み付き回帰 - 推定標準偏差

$$ weight = \frac{1}{SD^2} $$

統計メニューの回帰をクリックし、ダイアログボックスに次のように入力します。

回帰のダイアログボックス(重み付き回帰の例)

「重み」には、まず新しい変数 "REGR_Pred1" を選択し、次に選択内容を編集して変数を "1/REGR_Pred1^2" に変更します("1/(REGR_Pred1*REGR_Pred1)" または "1/Power(REGR_Pred1,2)" を使用することもできます)。

次の結果が得られます。

回帰の結果(重み付き回帰の例)

最終的な(重み付き)回帰式は次のとおりです。

DBP = 55.5658 + 0.5963 Age

これは、元の(重みなし)回帰式と大きな違いはありません。

DBP = 56.1569 + 0.5800 Age

ただし、回帰係数の標準誤差は小さくなり、その結果、信頼区間が狭くなります。

文献

  • Neter J, Kutner MH, Nachtsheim CJ, Wasserman W (1996) Applied linear statistical models. 4th ed. Boston: McGraw-Hill.

関連項目