Excelでのスピアマン順位相関:数式とグラフ

  • これを共有
Michael Brown

Spearman相関の基本をわかりやすく説明し、ExcelでSpearman順位相関係数を計算する方法を紹介します。

Excelで相関分析を行う場合、ほとんどの場合、Pearson相関を扱います。 しかし、Pearson相関係数は2つの変数の間の線形関係のみを測定するので、すべてのデータタイプに有効ではありません。 変数が非線形に強く関連していても、係数はゼロに近いかもしれません。そのような状況では、Spearman相関を行うことができます。Pearsonの代わりにランク相関を使用。

    スピアマンの相関 - 基礎編

    があります。 スピアマン相関 は、ノンパラメトリック版のピアソン相関係数で、2つの変数の順位に基づく関連性の度合いを測定するものです。

    があります。 ピアソン積率相関(Pearson Product Moment Correlation をテストします。 線形 線形とは、2つの変数が一定の割合で同じ方向に変化する関係をいう。

    スピアマン順位相関 を評価します。 モノトニック 単調な関係では、変数も一緒に変化する傾向があるが、必ずしも一定の速度で変化するわけではない。

    スピアマン相関を行う場合

    スピアマン相関分析は、ピアソン相関の基礎となる仮定が満たされない場合、以下のいずれかに該当する場合に使用される。

    1. もし、あなたのデータが 非線形 の関係であったり、正規分布でなかったりする。
    2. 少なくとも1つの変数が だい 値が「1番目、2番目、3番目...」の順に並べられるなら、あなたは序数データを扱っていることになります。
    3. 重要なものがある場合 がいせき スピアマン相関は、ピアソン相関と異なり、順位で計算するため、外れ値に敏感でなく、実際の値との差は意味を持たない。

    例えば、スピアマン相関を使って、次のような質問の答えを見つけることができます。

    • 教育レベルが高い人ほど、環境への関心が高いのでしょうか?
    • 患者さんが抱えている症状の数と服薬意欲は関係あるのでしょうか?

    スピアマン相関係数

    統計学では スピアマン相関係数 はどちらかで表されます。 r s またはギリシャ文字 ρ ("rho") と呼ばれることが多いのは、そのためです。 スピアマンのρ .

    スピアマン順位相関係数は、データの順位間の関係の強さと方向を測定するもので、-1~1の任意の値をとり、係数の絶対値が1に近いほど関係が強いとされる。

    • 1は完全な正の相関
    • -1 は完全な負の相関
    • 0は相関なし

    スピアマン順位相関式

    ランキングに同点があるかないか(2つ以上のオブザベーションに同じ順位が割り当てられているか)によって,Spearman 相関係数は以下の式のうちの1つを用いて計算できる.

    がある場合 無位無冠 のように、よりシンプルな計算式になります。

    どこで

    • d i は、2つのランク間の差
    • n はオブザベーションの数

    対応するため きんじとう の場合、Pearsonのrを少し修正したSpearmanの相関式のフルバージョンを使用する必要があります。

    どこで

    • R(x)、R(y)はランクです。 x y 変数
    • R(x)とR(y)は平均順位

    ExcelでCORREL関数を使用してスピアマン相関を計算する方法

    残念ながら、Excelにはスピアマン順位相関係数を計算する関数が組み込まれていません。 しかし、だからといって、上記の数式で頭を悩ませる必要はありません。 Excelを少し操作するだけで、もっと簡単にスピアマン相関を計算する方法を思いつくことができるのです。

    例えば、運動量と血圧の関係を調べてみましょう。 B列に、同年齢の男性10人が1日にジムで何分間運動したかを、C列に収縮期血圧を記入します。

    Excelでスピアマン相関係数を求めるには、以下の手順で行います。

    1. データのランク付け

      スピアマンの相関は、2つの変数間の関連性を順位に基づいて評価するため、ソースデータを順位付けする必要があります。 これは、Excel RANK.AVG 関数を使用することですぐに行うことができます。

      最初の変数(身体活動)をランク付けするには、D2 に以下の式を入力し、D11 にドラッグダウンします。

      =rank.avg(b2,$b$2:$b$11,0)とする。

      2番目の変数(血圧)をランク付けするために、セルE2に次の数式を入れ、列の下にコピーします。

      =rank.avg(c2,$c$2:$c$11,0)とする。

      数式を正しく動作させるために、必ず絶対セル参照で範囲を固定してください。

      この時点で、ソースデータは次のような状態になっているはずです。

    2. スピアマンの相関係数を求める

      順位が確定したところで、ExcelのCORREL関数を使ってSpearmanのrhoを求めることができる。

      =correl(d2:d11, e2:e11)

      この式から、係数は-0.7576(4桁に丸めた値)となり、かなり強い負の相関を示し、運動する人ほど血圧が下がると結論づけることができる。

      同じサンプルのピアソン相関係数(-0.7445)は、相関がやや弱いことを示しているが、それでも統計的に有意である。

    この方法の優れた点は、迅速かつ簡単で、ランキングに同順位があるかどうかに関係なく機能することです。

    Excelでスピアマンの相関係数を従来の計算式で計算する

    CORREL関数がSpearmanのrhoを正しく計算したかどうかよくわからない場合は、統計学で使われる伝統的な数式で結果を検証することができます。 その方法は次のとおりです。

    1. 各ランクのペアの差を求める( d )を、一方のランクからもう一方のランクを減算することで、算出されます。

      =D2-E2

      この数式は F2 に移動し、列の下にコピーされます。

    2. 各ランクの差を2の累乗にする( d2 ):

      =F2^2

      この数式はG列に入ります。

    3. 二乗した差分を足す。

      =SUM(G2:G11)です。

      この数式は、任意の空白セル(この例ではG12)に入れることができます。

      以下のスクリーンショットをご覧いただくと、データの配置がよくわかると思います。

    4. データセットに同順位があるかどうかによって、以下の計算式のいずれかを使用してスピアマン相関係数を計算します。

    今回の例では、同点がないので、より単純な計算式でいける。

    d2 は290に等しく、かつ n (観測回数)が10に等しい場合、式は次のような変形をする。

    その結果、-0.7575758となり、前の例で計算したスピアマンの相関係数と完全に一致します。

    Microsoft Excelでは、上記の計算を以下の式で行うことができます。

    =1-(6*G12/(10*(10^2-1)))

    ここで、G12は順位差の二乗和(d2)である。

    Excelでグラフを使ってスピアマン相関を行う方法

    Excel の相関係数は、線形関係(Pearson)または単調関係(Spearman)しか測定できません。 しかし、他の関連も可能です。 ですから、どの相関を行う場合でも、変数間の関係をグラフで表現することは、良いアイデアです。

    ランク付けされたデータの相関グラフを描くには、以下のようにします。

    1. この例で説明したように、RANK.AVG関数を使用してランクを計算します。
    2. ランクを持つ2つの列を選択します。
    3. XY散布図を挿入します。 散布 チャート のアイコンが表示されます。 インセット タブで チャット のグループです。
    4. チャートにトレンドラインを追加する方法です。 チャートの要素 ボタン> トレンドラインの追加... .
    5. チャート上にR2乗の値を表示 トレンドラインをダブルクリックしてペインを開き、R2乗の値に切り替えます。 トレンドラインオプション タブを選択し R2乗値を表示 グラフ上 ボックスを使用します。
    6. R2値の桁数を多く表示することで、より精度を高めることができます。

    その結果、ランク間の関係を視覚的に表現することができるようになります。 さらに、そのランクに応じた 決定係数 (R2)、その平方根がピアソンの相関係数(r)です。 しかし、ランク付けしたデータをプロットしたのですから、このピアソンのrはスピアマンのrho以外の何ものでもありません。

    注:R2乗は常に正の数であり、したがって推論されるスピアマン順位相関係数も常に正の数となる。 適切な符号を付けるには、相関グラフの線を見て、上向きの傾斜は正の相関(プラス符号)、下向きの傾斜は負の相関(マイナス符号)を意味する。

    この場合、R2 は 0.5739210285 であり、SQRT 関数で平方根を求めます。

    =sqrt(0.5739210285)

    ...と、すでにおなじみの0.7575758という係数が得られます。

    グラフの下り勾配は負の相関を示しているので、マイナス記号を加えて、正しいスピアマンの相関係数は-0.7575758となる。

    以上、Excelでスピアマン順位相関係数を計算する方法でした。 このチュートリアルで取り上げた例をより詳しく見るには、以下のサンプルワークブックをダウンロードしてください。 読んでいただきありがとうございました!来週のブログでお会いしましょう

    練習用ワークブック

    Excelで見るスピアマン順位相関(.xlsxファイル)

    Michael Brown は、ソフトウェア ツールを使用して複雑なプロセスを簡素化することに情熱を注ぐ熱心なテクノロジー愛好家です。テクノロジー業界で 10 年以上の経験があり、Microsoft Excel と Outlook、さらに Google Sheets と Docs のスキルを磨いてきました。 Michael のブログは、彼の知識と専門知識を他の人と共有することに特化しており、生産性と効率を向上させるためのわかりやすいヒントとチュートリアルを提供しています。経験豊富なプロフェッショナルであろうと初心者であろうと、Michael のブログでは、これらの重要なソフトウェア ツールを最大限に活用するための貴重な洞察と実践的なアドバイスを提供しています。