相関分析は、2つ以上の変数の関係性を明らかにする統計的手法です。特にビジネスの現場では、売上と広告費の関係や従業員満足度と離職率など、データに基づいた仮説検証や意思決定にて大いに活用されます。
本記事では、相関分析の基礎から相関係数の種類、分析手順、ビジネス活用例、Excel・R言語・Pythonなどのツール活用法まで、実務で役立つ知識を体系的に解説します。
相関分析とは?
このセクションでは、相関分析の定義と目的、どのような場面で活用されるのかを解説します。
相関とは何か?
相関とは、2つの変数の間にある「関係性の強さと方向」を示す概念です。たとえば「広告費が増えると売上も増える」というような関係性があれば、それは正の相関があると言えます。
相関分析の目的と活用シーン
相関分析の目的は、変数間の関係性の強弱と方向性を可視化することです。マーケティング、人事、商品開発、営業など幅広い分野で活用されており、仮説立案・検証やKPI設計に役立てられます。
相関係数の種類と意味
このセクションでは、相関分析で用いられる相関係数の種類とそれぞれの意味を解説します。
ピアソンの積率相関係数
ピアソンの相関係数とは、最も一般的に使われる指標で、連続変数間の線形な関係の強さを測定します。値は-1〜+1の範囲で表されます。
スピアマンの順位相関係数
スピアマンの順位相関係数は、順位尺度データや外れ値に強いという特徴があります。順位相関を評価したい場合に適しています。
相関係数の値とその解釈(-1〜+1の意味)
これらを踏まえて相関係数は以下のように解釈されます。
- ・+1:完全な正の相関
- ・0:相関なし
- ・-1:完全な負の相関。 一般的には、|r| > 0.7 で強い相関と見なされます。
相関分析の手順
このセクションでは、実際に相関分析を行う手順を解説します。
1. 分析対象データの準備
まずは目的に合ったデータの選定と、欠損値処理、正規性の確認などの前処理を行います。
2. 相関係数の計算方法
ピアソンrは以下の式で計算されます: r = 共分散 / (標準偏差X × 標準偏差Y) ExcelやR言語、Pythonなどのツールで簡単に算出可能です。
3. 相関の有意性の検定
単に相関係数を算出するだけでなく、統計的に有意かどうか(p値)も確認することが重要です。
注意点と落とし穴
このセクションでは、相関分析を誤って使わないための注意点を紹介します。
相関と因果の違い
相関があるからといって、因果関係があるとは限らない点に注意が必要です。たとえば「アイスの売上と熱中症件数」に相関があっても、必ずしも片方が原因とは言えません。
外れ値・サンプル数の影響
外れ値が1つあるだけで相関係数は大きく変動する可能性があります。また、サンプル数が少ないと偶然の相関が出やすくなるため、30件以上を目安に十分なデータ数を確保しましょう。
ダミー変数との扱い
カテゴリ変数を0・1のダミー変数に変換して相関を取ることは可能ですが、そう解釈するには慎重さが求められます。
ビジネスでの相関分析の活用例
このセクションでは、相関分析が実際にどうビジネスに活かされているかを分野別に紹介します。
マーケティング(広告費と売上)
広告投資と売上の相関を見ることで、費用対効果の高いチャネルの特定や、広告施策の優先順位づけが可能になります。
人事分析(従業員満足度と離職率)
従業員満足度と離職率の負の相関が確認できれば、離職防止策の重点対象を絞ることができます。
商品開発(顧客評価と購買率)
顧客アンケートの評価と購買率との相関を分析することで、購買意欲を高める製品特徴の把握に活用できます。
ツールを使った相関分析の実践
これまでの相関分析の説明を踏まえて、このセクションでは、実務でよく使われるツールを用いた相関分析の具体的な方法を紹介します。
Excelでの相関係数の求め方
ExcelならばCORREL関数や分析ツールを使えば、簡単に相関係数を求めることが可能です。可視化には散布図+近似曲線が有効です。
例えばExcelのCORREL関数は、
=CORREL(配列1, 配列2)
の形式で、2つのデータ列の相関係数を計算することが可能です。
R言語やPythonを使った分析例
プログラムならばR言語ではcor()、Pythonではpandas.corr()が基本関数です。可視化にはggplot2やseabornのヒートマップが多用されます。
例えば、以下のようにして算出を行います。
R言語での算出方法
# 例:広告費と売上の相関を分析する
---
ad_cost <- c(100, 200, 300, 400, 500) # 広告費のデータ(任意の数値を入れてOK)
sales <- c(120, 230, 330, 450, 580) # 売上のデータ(任意の数値を入れてOK)
cor(ad_cost, sales, method = “pearson”) # ピアソン相関係数を計算
---
- ・c(…) の中には、分析したい数値データのリストを入れます。
- ・2つのデータがどれくらい連動しているか(=相関しているか)を算出します。
Pythonでの相関係数の計算(ピアソン)
# 例:広告費と売上の相関を分析する
---
data = {
‘ad_cost’: [100, 200, 300, 400, 500] # 広告費のデータ
‘sales’: [120, 230, 330, 450, 580] # 売上のデータ
}
df = pd.DataFrame(data) # データフレームを作成
result = df[‘ad_cost’].corr(df[‘sales’], method=’pearson’) # 相関係数を算出
print(result)
---
- ・辞書型で 列名: 数値データ を入力して DataFrame に変換。
- ・.corr() で 2つの列の相関係数(-1〜+1) を計算できます。
まとめ
相関分析は、ビジネスにおける仮説検証と意思決定の出発点となる手法です。ただし、相関と因果を混同しないこと、外れ値やデータ特性に注意することが重要です。ExcelやR言語などのツールを活用しながら、目的に応じて適切な相関指標を選び、多面的な分析と意思決定に役立てましょう。
デコムでは、もっと学びたい人に向けて様々なイベントやセミナーを開催しています。
是非、この機会にご参加ください。







