最小二乗法による線形回帰の数学的基礎
線形回帰分析は、2つの変数間における直線的な関係を定量化するための統計的手法です。本ツールでは、観測されたデータ点と回帰直線との間の垂直方向のズレ(残差)の平方和を最小化する「普通最小二乗法(OLS)」を採用しています。
計算の精度を保つため、本ツールはNIST/SEMATECHの統計手法ハンドブックに準拠し、補償加算を用いた2パス方式で平均値からの偏差平方和を算出します。これにより、データの数値の桁数が大きく離れている場合でも、丸め誤差による精度低下を防ぎます。
具体的な計算プロセスは以下の通りです:
- 平均値の算出 x̄ = (Σ xᵢ) / n, ȳ = (Σ yᵢ) / n
- 偏差平方和(Sₓₓ)と偏差積和(Sₓy)の算出 Sₓₓ = Σ(xᵢ - x̄)², Sₓy = Σ(xᵢ - x̄)(yᵢ - ȳ)
- 傾き(b)と切片(a)の決定 b = Sₓy / Sₓₓ, a = ȳ - bx̄
算出された回帰直線は y = a + bx という方程式で表されます。
回帰係数と統計量の解釈
得られた回帰直線の各指標は、データの特徴について異なる側面を示しています。
- 傾き b: 「xが1増加するごとに、yは平均して
‹slope›変化します。」という関係を表します。 - 切片 a: 「xが0のとき、直線は y =
‹intercept›に位置します。」という基準点を示します。 - 相関係数 r: 変数間の直線的な関連性の強さと方向を示し、傾きと同じ符号を持ちます。
- 決定係数 R²: 「説明される変動の割合」であり、yの全変動のうち回帰直線によって説明できる割合(SSR ÷ SST)を表します。
- 自由度調整済み R²: サンプルサイズの影響を補正した決定係数であり、モデルの比較に用いられます。
- 残差の標準誤差 s: 直線の周りにおけるデータのばらつき(残差の広がり)を測定します。
データの入力規則と境界条件
本ツールは、ユーザーの入力データに応じてリアルタイムに計算を行います(計算ボタンはありません)。スプレッドシートから2列のデータを直接コピー&ペーストして利用できます。最初の行が数値でない場合は、ヘッダー行として自動的にスキップされます。
入力データの状態によっては、数学的な制約により以下のステータスやエラーが表示されます。
- データが1点のみの場合: 「少なくとも2点以上のデータを入力してください。1点だけでは直線を定義できません。」というエラーになります。
- ちょうど2点の場合: 直線が完全に固定されるため、「2つのデータ点によって直線が完全に決定されるため、不確実性を推定するための自由度が残りません。」と表示されます。
- すべてのデータ点が直線上に並ぶ場合: 残差がゼロになるため、「すべてのデータ点が直線上に完全に一致しているため、残差のばらつきがなく、信頼区間やp値を推定できません。」と表示されます。
- すべてのyの値が同じ場合: 「すべてのyの値が同じです。直線は水平になり、r、R²、および有意性検定は定義されません。」と表示されます。
- すべてのxの値が同じ場合: 垂直な直線となり傾きが定義できないため、「すべてのxの値が同じです。直線が垂直になり、傾きの計算でゼロ除算が発生します。」というエラーが発生します。
残差分析と仮説検定の重要性
回帰モデルの妥当性を検証するためには、単に係数の数値をみるだけでなく、残差(実際の値と予測値の差 y − ŷ)を分析することが不可欠です。
本ツールが提供する「分散分析」テーブル(ANOVA)では、全体の変動を「回帰による説明」と「残差(未説明)」に分解し、F統計量とそのp値を算出します。一変数線形回帰においては、傾きのt検定のp値と、分散分析のF検定のp値は常に一致します。
また、出力される「残差」プロット(xに対する残差の分布)を確認し、残差がゼロ基準線を中心にランダムに分布しているか確認してください。残差に曲線パターンや、xが大きくなるにつれて広がるようなファン形状(不均一分散)が見られる場合、線形回帰モデルをそのまま適用するのは不適切である可能性があります。
予測値と2つの信頼区間
任意のxの値を入力することで、対応するyの予測値 y と、その不確実性を示す2種類の区間を算出できます。
- 平均信頼区間
‹level›%: そのxにおける「平均的なy」が位置する範囲を示します。 - 個別予測区間
‹level›%: 「新しく得られる1つの観測値」が位置する範囲を示します。
個別予測区間には、回帰直線自体の不確実性に加えて、個々のデータのばらつき(残差の標準誤差 s)が加算されるため、平均信頼区間よりも常に幅が広くなります。また、どちらの区間も、入力されたxの値がデータの平均値 x から離れるほど、直線の傾きの不確実性が影響して幅が広がります。
予測したいxの値が、入力されたデータの範囲を超えている場合は、「データ範囲外」というラベルが表示され、データが示す範囲を超えて直線を延長(外挿)していることを警告します。
プライバシーとデータ処理について
本ツールに入力されたすべてのデータ点および計算された統計情報は、完全にユーザーのローカルウェブブラウザ内でのみ処理され、外部のサーバーにアップロードされることはありません。
よくある質問
どちらの列をxにするかは重要ですか?
はい、重要です。最小二乗法は垂直方向(y方向)のズレを最小化するように直線を引くため、xとyを入れ替えると異なる傾きと切片が算出されます(相関係数rと決定係数R²のみは変わりません)。予測したい変数をy(目的変数)に設定してください。本ツールには、入力されたデータをその場で入れ替える「xとyを入れ替える」機能が搭載されています。
R²(決定係数)は何を表しているのですか?
R²(決定係数)は、yの変動のうち回帰直線によって説明できる割合を示します。例えば0.96であれば、変動の96%がxと連動しており、4%は連動していないことを意味します。ただし、直線による定式化が適切であったかどうかは示さないため、必ず残差プロットと併せて確認してください。
なぜ予測値には2つの区間があるのですか?
これらは異なる問いに答えるものです。平均信頼区間は「そのxにおけるすべてのデータの平均的なyはどこに位置するか」を問うため、回帰直線自体の不確実性のみが考慮されます。一方、個別予測区間は「新しく得られる1つの観測値がどこに収まるか」を問うため、直線の周りにおけるデータのばらつきが加算されます。この追加の変動要因があるため、個別予測区間は常に平均信頼区間よりも広くなります。
p値が小さいことは、xがyの原因であることを意味しますか?
いいえ、そうとは言えません。p値は「もし実際の傾きが0である(因果関係がない)とした場合、この規模のサンプルから、これほど0から離れた傾きが算出される確率はどのくらいか」という限定的な問いに答えるだけです。因果関係を証明するには、研究のデザインそのものが必要です。両方の変数に影響を与える第三の要因が存在する場合や、サンプルが独立して収集されていない場合でも、p値は簡単に小さくなります。