株価の予測や売上の分析をしたいとき、「どの要因がどれくらい影響しているのか」を数値で把握できたら便利だと思いませんか?統計学における回帰分析は、まさにそうした「変数同士の関係性」を明らかにし、未来の値を予測するための強力な手法です。
回帰分析は、マーケティングや金融、医療など幅広い分野で活用されており、データに基づいた意思決定を支える重要なツールとなっています。しかし、「難しそう」「数式が多くて苦手」と感じる方も多いのではないでしょうか。
この記事では、統計学における回帰分析の基礎知識から、単回帰分析・重回帰分析の違い、実際の計算方法、そして結果の読み取り方まで、初心者の方にもわかりやすく丁寧に解説していきます。実際の株取引や投資判断にも応用できる内容なので、ぜひ最後までご覧ください。
目次
目次
- 回帰分析とは?統計学における基本的な考え方
- 回帰分析の種類と特徴
- 単回帰分析の基礎:計算式と求め方
- 重回帰分析の基礎:複数の要因を同時に分析
- 回帰分析でできる2つのこと
- 回帰分析の結果を読み取る重要指標
- 回帰分析を行う際の注意点
- 回帰分析を簡単に実践する方法
- まとめ
回帰分析とは?統計学における基本的な考え方
回帰分析(Regression Analysis)とは、ある変数(目的変数)が他の変数(説明変数)によってどのように影響を受けるかを統計的に分析する手法です。簡単に言えば、「原因と結果の関係性を数式で表す」ことを目指します。
例えば、「広告費を増やすと売上がどれくらい増えるのか」「株価はどんな経済指標に影響されるのか」といった疑問に対して、データに基づいた答えを導き出すことができます。
回帰分析の最大の特徴は、因果関係を数値化できる点にあります。単に「関係がある」ということを示す相関分析とは異なり、回帰分析では「説明変数が1単位変化したとき、目的変数がどれだけ変化するか」という具体的な影響度を把握できます。
相関分析と回帰分析の違い
初心者の方が混乱しやすいのが、相関分析と回帰分析の違いです。両者は似ているようで、目的が大きく異なります。
| 項目 | 相関分析 | 回帰分析 |
|---|---|---|
| 目的 | 2つの変数間の「関係の強さ」を測る | 変数間の「因果関係」をモデル化し予測する |
| 出力 | 相関係数(-1〜1の値) | 回帰式(予測式)と各種統計量 |
| 変数の役割 | 対等な関係 | 説明変数と目的変数に分かれる |
| 予測 | できない | できる |
相関分析は「関係があるかどうか」を調べるのに対し、回帰分析は「どのような関係があるか」を具体的に式で表現し、未来の予測まで可能にします。
回帰分析の歴史と語源
回帰分析という名前の由来は、19世紀のイギリスの統計学者フランシス・ゴルトンの研究にさかのぼります。ゴルトンは親子の身長の関係を調査した際、背の高い親の子どもは親より低く、背の低い親の子どもは親より高くなる傾向、つまり「平均へ回帰する(regression toward the mean)」現象を発見しました。
この「回帰」という概念が統計学の手法名として定着し、現在では幅広い分野で応用されています。
回帰分析の種類と特徴
回帰分析には、説明変数の数や目的変数の種類によって、いくつかの種類があります。ここでは代表的な3つのタイプを紹介します。
種類1. 単回帰分析
単回帰分析(Simple Regression Analysis)は、1つの説明変数で1つの目的変数を予測する、最もシンプルな回帰分析です。
例えば以下のようなケースで用いられます。
- 広告費と売上:広告費(説明変数)が売上(目的変数)にどう影響するかを分析
- 気温とアイスの売上:気温が上がるとアイスの売上がどれくらい増えるかを予測
- 勉強時間とテストの点数:勉強時間と成績の関係を数値化
単回帰分析の回帰式は次のような形で表されます。
\(y = a + bx\)
ここで、yは目的変数、xは説明変数、aは切片(定数項)、bは回帰係数(傾き)を表します。
種類2. 重回帰分析
重回帰分析(Multiple Regression Analysis)は、複数の説明変数を使って1つの目的変数を予測する手法です。現実のビジネスや投資の場面では、1つの要因だけでなく複数の要因が絡み合っているため、重回帰分析がよく使われます。
例えば以下のような分析が可能です。
- 不動産価格の予測:立地、広さ、築年数、駅からの距離などから物件価格を予測
- 株価の予測:金利、為替レート、企業業績などから株価の動きを分析
- 売上の要因分析:広告費、価格、季節要因などが売上にどう影響するかを同時に評価
重回帰分析の回帰式は次のような形になります。
\(y = a + b_1x_1 + b_2x_2 + \cdots + b_nx_n\)
各説明変数x₁, x₂, …, xₙに対応する回帰係数b₁, b₂, …, bₙが、それぞれの変数の影響度を示します。
種類3. ロジスティック回帰分析
ロジスティック回帰分析(Logistic Regression Analysis)は、目的変数が「Yes/No」や「成功/失敗」といった2値(カテゴリカル)データの場合に用いられる手法です。
株取引の場面では、次のような分析に活用できます。
- 株価の上昇・下落の予測:明日の株価が上がるか下がるかを確率で予測
- 顧客の購買予測:顧客が商品を購入するかどうかを予測
- リスク判定:ある条件下で損失が発生する確率を算出
ロジスティック回帰では、確率を0〜1の範囲で出力するため、通常の線形回帰とは異なるモデル式を使います。
単回帰分析の基礎:計算式と求め方
ここからは、単回帰分析の具体的な計算方法を見ていきましょう。統計学の基礎として、まずは1つの説明変数と1つの目的変数の関係をしっかり理解することが重要です。
単回帰式の形
単回帰分析では、データを最もよく表す直線(回帰直線)を求めます。その直線の式が回帰式です。
\(y = a + bx\)
- y:目的変数(予測したい値)
- x:説明変数(影響を与える値)
- b:回帰係数(傾き)。xが1増えたときyがどれだけ変化するか
- a:切片(定数項)。xが0のときのyの値
最小二乗法による回帰係数の求め方
回帰直線を求める最も一般的な方法が最小二乗法(Least Squares Method)です。これは、実際のデータと予測値の「誤差の二乗和」を最小にするように、回帰係数aとbを決定する方法です。
具体的な計算手順は以下の通りです。
- データの平均を計算:説明変数xの平均値と目的変数yの平均値を求めます
- 偏差を計算:各データポイントと平均値の差(偏差)を求めます
- 偏差積と偏差平方を計算:xとyの偏差の積、およびxの偏差の平方を求めます
- 回帰係数bを計算:次の公式で傾きを求めます
\(b = \frac{\sum_{i=1}^{n}(x_i – \bar{x})(y_i – \bar{y})}{\sum_{i=1}^{n}(x_i – \bar{x})^2}\)
- 切片aを計算:次の公式で定数項を求めます
\(a = \bar{y} – b\bar{x}\)
ここで、x̄はxの平均値、ȳはyの平均値、nはデータの個数を表します。
単回帰分析の具体例
具体的な例で理解を深めましょう。ある企業の「広告費(万円)」と「売上(万円)」のデータが以下のようになっているとします。
| 広告費(x) | 売上(y) |
|---|---|
| 10 | 120 |
| 15 | 150 |
| 20 | 180 |
| 25 | 210 |
| 30 | 240 |
このデータから回帰式を求めると、次のような手順になります。
- 平均値を計算:x̄ = 20、ȳ = 180
- 各データの偏差を計算し、偏差積と偏差平方の合計を求める
- 回帰係数bを計算:b = 6
- 切片aを計算:a = 60
したがって、回帰式は次のようになります。
\(y = 60 + 6x\)
この式から、広告費を1万円増やすと売上が6万円増える傾向があることが読み取れます。また、広告費がゼロの場合でも基礎的な売上として60万円が見込まれることがわかります。
誤差(残差)の考え方
回帰分析では、実際の観測値と回帰式による予測値の差を誤差(残差、Residual)と呼びます。
\(e_i = y_i – \hat{y}_i\)
ここで、eᵢは誤差、yᵢは実際の観測値、ŷᵢは回帰式による予測値です。
最小二乗法では、この誤差の二乗和を最小化することで、データに最も適合する回帰直線を見つけます。誤差が小さいほど、回帰式の予測精度が高いと言えます。
重回帰分析の基礎:複数の要因を同時に分析
実際のビジネスや株式投資では、1つの要因だけで結果が決まることは稀です。複数の要因が絡み合って影響を与えるため、重回帰分析が非常に重要になります。
重回帰式の形
重回帰分析では、複数の説明変数を使って目的変数を予測します。基本的な形は次の通りです。
\(y = a + b_1x_1 + b_2x_2 + b_3x_3 + \cdots + b_nx_n\)
- y:目的変数(予測したい値)
- x₁, x₂, …, xₙ:複数の説明変数
- b₁, b₂, …, bₙ:各説明変数の回帰係数(偏回帰係数)
- a:切片(定数項)
各回帰係数は、「他の説明変数を一定に保ったとき、その変数が1単位増えると目的変数がどれだけ変化するか」を示します。これを偏回帰係数(Partial Regression Coefficient)と呼びます。
重回帰分析の具体例
例えば、株価を予測する場合を考えてみましょう。株価に影響する要因として、以下の3つを説明変数に設定します。
- x₁:前日の出来高(万株)
- x₂:日経平均株価の変化率(%)
- x₃:為替レート(円/ドル)
過去のデータから重回帰分析を行った結果、次のような回帰式が得られたとします。
\(y = 1500 + 0.02x_1 + 30x_2 – 5x_3\)
この式から次のことが読み取れます。
- 出来高の影響:出来高が1万株増えると、株価が0.02円上昇する傾向
- 日経平均の影響:日経平均が1%上昇すると、株価が30円上昇する傾向
- 為替の影響:為替レートが1円高くなる(円安)と、株価が5円下落する傾向
重回帰分析では、複数の要因を同時に考慮することで、より現実に近い予測モデルを構築できます。
多重共線性の問題
重回帰分析を行う際に注意すべきなのが多重共線性(Multicollinearity)です。これは、説明変数同士が強く相関している状態を指します。
多重共線性が生じると、次のような問題が発生します。
- 回帰係数が不安定になる:データがわずかに変わるだけで係数が大きく変動する
- 個別の影響度が評価しにくい:どの変数が本当に重要なのか判断が難しくなる
- 統計的検定の信頼性が低下:係数の有意性検定が正しく機能しない
多重共線性を確認する指標として、VIF(Variance Inflation Factor:分散拡大要因)があります。一般的にVIFが10を超える場合は、多重共線性の問題があると判断されます。
回帰分析でできる2つのこと
回帰分析は統計学の中でも特に実用的な手法として、さまざまな場面で活用されています。ここでは、回帰分析で実現できる主な2つの機能を詳しく見ていきましょう。
1. 現状の傾向を把握できる
回帰分析の第一の目的は、変数間の因果関係を数値化し、現状の傾向を把握することです。
例えば、以下のような分析が可能になります。
- 売上要因の特定:広告費、価格設定、季節要因のうち、どれが最も売上に影響しているかを定量的に評価
- 株価の変動要因:企業業績、市場全体の動き、金利変動などが株価にどう影響しているかを分析
- 顧客行動の理解:年齢、収入、居住地などが購買行動にどう関連しているかを把握
回帰係数の大きさや符号(プラス・マイナス)を見ることで、「どの要因がどれくらい、どの方向に影響するか」を具体的に理解できます。
2. 未来の予測ができる
回帰分析のもう1つの重要な機能が、未来の値を予測することです。過去のデータから得られた回帰式を使って、新しい状況での目的変数の値を推定できます。
株式投資やビジネスでは、以下のような予測に活用されています。
- 株価予測:経済指標や企業の業績予想から、将来の株価水準を予測
- 売上予測:来月の広告予算や季節要因から、期待される売上高を算出
- 需要予測:気温や曜日などから、商品の需要量を事前に見積もる
- 不動産価格の推定:立地や広さなどの条件から、適正な物件価格を算出
ただし、予測はあくまで過去のパターンに基づくものであり、未来が過去と同じように動くとは限らない点に注意が必要です。
回帰分析の結果を読み取る重要指標
回帰分析を実際に行った後、その結果をどう解釈するかが重要です。ここでは、結果を読み取る際に確認すべき代表的な指標を紹介します。
1. 決定係数(R²)
決定係数(R²:R-squared)は、回帰モデルがデータをどれだけ説明できているかを示す指標です。0〜1の値を取り、1に近いほどモデルの当てはまりが良いことを意味します。
\(R^2 = 1 – \frac{\sum(y_i – \hat{y}_i)^2}{\sum(y_i – \bar{y})^2}\)
例えば、R² = 0.8 の場合、「目的変数のばらつきの80%が、説明変数によって説明できている」と解釈できます。
ただし、重回帰分析では説明変数を増やすだけでR²が上がってしまう性質があるため、自由度調整済み決定係数(Adjusted R²)を使うのが一般的です。
2. 回帰係数(偏回帰係数)
回帰係数は、各説明変数が目的変数に与える影響の大きさと方向を示します。
- 係数がプラス:説明変数が増えると目的変数も増える正の関係
- 係数がマイナス:説明変数が増えると目的変数は減る負の関係
- 係数の絶対値が大きい:その変数の影響が大きい
ただし、説明変数の単位が異なる場合、回帰係数の大きさだけでは影響度を比較できません。その場合は、後述する標準化回帰係数を使います。
3. 標準化回帰係数(β係数)
標準化回帰係数(Standardized Regression Coefficient)は、説明変数と目的変数をそれぞれ標準化(平均0、標準偏差1に変換)してから求めた回帰係数です。
単位の影響を受けないため、異なる説明変数の影響度を直接比較できます。絶対値が大きい変数ほど、目的変数への影響が大きいと判断できます。
4. p値(有意確率)
p値は、回帰係数が統計的に意味があるかどうかを判断する指標です。一般的に、p 0.05 であれば「その説明変数は目的変数に有意な影響を与えている」と判断します。
p値が大きい(例えば0.1以上)場合は、その変数は統計的に有意ではなく、偶然の影響である可能性が高いと考えられます。
5. 標準誤差(SE)
標準誤差(Standard Error)は、回帰係数の推定の精度を示す指標です。標準誤差が小さいほど、係数の推定値が安定していることを意味します。
標準誤差が大きい場合は、データのばらつきが大きいか、サンプルサイズが不足している可能性があります。
6. F値(F統計量)
F値は、回帰モデル全体の有意性を検定する指標です。「すべての回帰係数がゼロである」という帰無仮説を検定し、F値が大きいほどモデル全体が統計的に意味があることを示します。
F値に対応するp値が0.05未満であれば、そのモデルは統計的に有意であると判断できます。
回帰分析を行う際の注意点
回帰分析は強力なツールですが、正しく使わないと誤った結論を導いてしまう可能性があります。ここでは、実践する際の重要な注意点を4つ紹介します。
1. 因果関係と相関関係を混同しない
回帰分析で強い関係が見つかっても、それが必ずしも因果関係を意味するわけではありません。
例えば、「アイスクリームの売上」と「水難事故の件数」には正の相関があるかもしれませんが、アイスが事故を引き起こすわけではありません。どちらも「気温」という第三の要因の影響を受けているだけです。
回帰分析の結果を解釈する際は、背景にある理論や因果メカニズムを常に意識することが重要です。
2. 外挿(予測範囲外の予測)に注意
外挿(Extrapolation)とは、データの範囲外の値を予測することを指します。回帰式はあくまでデータの範囲内での関係を表しているため、範囲外では関係性が変化する可能性があります。
例えば、広告費10万〜50万円のデータで作った回帰式を使って、広告費1000万円のときの売上を予測するのは危険です。ある程度以上の広告費では、効果が頭打ちになる可能性があるからです。
3. 外れ値の影響に注意
外れ値(Outlier)は、他のデータから大きく離れた異常値のことです。最小二乗法では誤差の二乗を最小化するため、外れ値があると回帰直線が大きく引っ張られてしまいます。
分析前に散布図を描いて外れ値の有無を確認し、必要に応じて除外するか、ロバスト回帰などの別の手法を検討しましょう。
4. モデルの前提条件を確認する
回帰分析には、いくつかの統計的な前提条件があります。
- 線形性:説明変数と目的変数の関係が直線的である
- 誤差の正規性:残差が正規分布に従う
- 等分散性:残差の分散がすべてのデータで一定
- 独立性:各観測値が互いに独立している
これらの前提が満たされていない場合、回帰分析の結果が信頼できない可能性があります。残差プロットなどで前提条件を確認することが推奨されます。
回帰分析を簡単に実践する方法
理論を学んだら、実際に回帰分析を実践してみましょう。手計算で行うこともできますが、現代ではさまざまなツールやソフトウェアを使って簡単に分析できます。
1. Excel(エクセル)を使う
最も手軽な方法がMicrosoft Excelを使う方法です。Excelには「データ分析」アドインが用意されており、回帰分析を簡単に実行できます。
基本的な手順は以下の通りです。
- データを縦に並べて入力(1列目:説明変数、2列目:目的変数)
- 「データ」タブから「データ分析」を選択
- 「回帰分析」を選び、入力範囲を指定
- 出力先を選んで「OK」をクリック
結果には、回帰係数、決定係数、p値などが自動的に表示されます。初心者の方はまずExcelで試してみるのがおすすめです。
2. Rを使う
Rは、統計解析に特化した無料のプログラミング言語・環境です。高度な分析や大量データの処理に適しており、統計学を学ぶ方には必須のツールと言えます。
Rでの単回帰分析の基本的なコードは次のようになります。
# データの読み込み(例)
data <- data.frame(x = c(10, 15, 20, 25, 30), y = c(120, 150, 180, 210, 240))
# 回帰分析の実行
model <- lm(y ~ x, data = data)
# 結果の表示
summary(model)
Rは学習曲線がやや急ですが、慣れれば非常に強力な分析が可能になります。
3. Pythonを使う
Pythonは汎用プログラミング言語で、scikit-learnやstatsmodelsといったライブラリを使って回帰分析ができます。機械学習への応用も容易なため、データサイエンス分野で広く使われています。
Pythonでの回帰分析の例は以下の通りです。
import numpy as np
from sklearn.linear_model import LinearRegression
# データの準備
x = np.array([10, 15, 20, 25, 30]).reshape(-1, 1)
y = np.array([120, 150, 180, 210, 240])
# モデルの構築と学習
model = LinearRegression()
model.fit(x, y)
# 結果の確認
print('切片:', model.intercept_)
print('回帰係数:', model.coef_)
4. 専用の統計ソフトウェアを使う
より本格的な分析には、SPSS、SAS、STATAといった専用の統計ソフトウェアがあります。これらは主に研究機関や企業で使われており、GUI(グラフィカル・ユーザー・インターフェース)が充実しているため、プログラミング知識がなくても使いやすいのが特徴です。
ただし、多くは有料ソフトウェアであるため、まずは無料のExcel、R、Pythonで基礎を学んでから検討すると良いでしょう。
まとめ
この記事では、統計学における回帰分析について、基礎から応用まで幅広く解説してきました。最後に重要なポイントをおさらいしておきましょう。
- 回帰分析とは:変数間の因果関係を数式で表現し、予測を可能にする統計手法。相関分析とは異なり、具体的な影響度を数値化できる
- 単回帰分析と重回帰分析:単回帰は1つの説明変数、重回帰は複数の説明変数を使用。現実の問題では重回帰が主流だが、基礎理解には単回帰から学ぶことが重要
- 最小二乗法:実際のデータと予測値の誤差の二乗和を最小にする方法で、回帰直線を求める最も一般的な手法
- 結果の読み取り:決定係数、回帰係数、p値などの指標を総合的に見て、モデルの妥当性と各変数の影響度を評価する
- 注意点:因果関係と相関の混同、外挿のリスク、外れ値の影響、モデルの前提条件など、適切な解釈と使用には統計的な注意が必要
回帰分析は、株式投資における銘柄選択や売買タイミングの判断、ビジネスにおける売上予測や戦略立案など、データに基づいた意思決定の強力な武器となります。最初は難しく感じるかもしれませんが、実際にデータを使って分析を繰り返すことで、徐々に理解が深まっていきます。
まずはExcelなどの身近なツールで簡単な単回帰分析から始めて、少しずつステップアップしていくことをおすすめします。統計学の知識は、あなたの投資判断やビジネス分析の精度を確実に高めてくれるはずです。