Top 5 This Week

関連記事

【医療統計版】相関係数:PearsonとSpearmanの使い分けと区間

- 本サイト運営者のサービスの紹介 -

血中マーカーが高い人ほど治療反応も大きいという傾向を、1つの数値で表したい場面があります。相関係数はこの関連を要約できますが、0.7という値だけでは直線的な関係なのか、外れ値に引かれたのか、推定がどれほど不確かなのかまでは分からないため、散布図の形と研究目的を合わせて読む必要があります。

さらに、Pearson相関とSpearman相関は、同じ関係を頑健性だけ変えて測る方法ではなく、要約している関係そのものが違います。ここでは、相関係数の符号と絶対値の読み方に加えて、線形関連にはPearson相関、単調関連にはSpearman相関を選ぶ理由と、95%信頼区間から標本相関の不確実性を読む方法まで扱います。

相関係数が要約する関係

Pearson(1896)にさかのぼる積率相関は、2変数の線形関連を$-1$から$1$の範囲で表します。標本数を$n$、対象者$i$の2つの測定値を$X_i$と$Y_i$、それぞれの標本平均を$\bar{X}$と$\bar{Y}$とすると、標本Pearson相関$r$は次の式です。

$$r=\frac{\sum_{i=1}^{n}(X_i-\bar{X})(Y_i-\bar{Y})}{\sqrt{\sum_{i=1}^{n}(X_i-\bar{X})^2\sum_{i=1}^{n}(Y_i-\bar{Y})^2}} \tag{1}$$

式(1)は、2変数がそれぞれの平均から同じ方向へ離れる程度を、それぞれのばらつきで尺度調整した値です。正なら一方が大きいほど他方も大きい傾向を、負なら一方が大きいほど他方は小さい傾向を表します。

ただし、$r=0$を「あらゆる関連がない」と読むことはできず、上に凸の曲線やU字型の関係では、増える部分と減る部分が相殺され、散布図に明瞭な関係があってもPearson相関は0付近になり得ます。一方、$r$が1に近くても測定法同士の値が一致しているとは限らず、相関は関連の指標であって一致度の指標ではありません。

絶対値を固定基準で区切らない

相関係数の絶対値が大きいほど、対象としている関係は強く表れますが、0.3を弱い、0.5を中程度、0.7を強いと機械的に区切る方法は適切ではありません。Schoberら(2018)も、相関の解釈は研究領域と目的に依存するため、散布図や信頼区間と合わせて読む必要があると説明しています。

たとえば、測定誤差の大きいバイオマーカー同士の$r=0.50$と、同じ機器による反復測定の$r=0.50$では、研究上の意味が同じとは限りません。さらに、単位を変えても相関係数は変わりませんが、対象集団を狭くすると値の範囲が制限されるため、同じ生物学的関係でも相関が小さく見えることがあり、測定誤差の影響も受けます。

また、相関係数から因果方向を決めることはできず、マーカーと治療反応の正の相関には、共通の背景因子、対象者の選択、測定時点などが関わっている可能性があります。そのため、統計的に強い関連が得られても、マーカーを変えれば反応が変わるという因果効果へ読み替えることは避けます。

PearsonとSpearmanの選択

Spearman(1904)の順位相関は、元の測定値を順位へ置き換え、その順位同士についてPearson相関を計算します。このため、値そのものが直線に沿う程度ではなく、一方が増えるにつれて他方も一貫して増える、または減るという単調関連を要約し、順序尺度や曲線的でも単調な関係を扱う場合に選択肢となります。

一方、「正規分布でなければSpearman相関」という選び方は勧めず、先に決めるのは元の測定尺度における線形関連を知りたいのか、順位に基づく単調関連を知りたいのかです。分布の歪みや外れ値も確認する必要はありますが、正規性だけを理由に推定対象まで切り替えると、研究目的とは違う関係を報告することになります。

さらに、Spearman相関も外れ値の影響を完全に除く方法ではなく、値の極端さは順位への変換で抑えられても、順位そのものが端へ動けば係数は変化します。また、単調でない関係はSpearman相関でも1つの係数へ要約しにくいため、散布図を見ずに2つの係数のうち大きい方を採用する進め方にも根拠はありません。

信頼区間が伝える不確実性

同じ$r=0.50$でも、例数30の研究と300の研究では推定の精度が異なるため、点推定だけを並べるとこの差が抜け落ちます。Bonett・Wright(2000)は、Pearson、Kendall、Spearman相関について、区間幅に基づいて必要な標本サイズを考える方法を扱っています。

Pearson相関の近似的な区間にはFisher変換を使えます。母相関を$\rho$、標本相関を$r$とし、$z=\operatorname{atanh}(r)$へ変換した尺度では、95%信頼区間を次のように計算します。

$$\left[\tanh\left\{z-\frac{1.96}{\sqrt{n-3}}\right\},\ \tanh\left\{z+\frac{1.96}{\sqrt{n-3}}\right\}\right] \tag{2}$$

式(2)では、Fisher変換後の標準誤差$1/\sqrt{n-3}$を使って区間を作り、最後に元の相関係数の尺度へ戻します。ただし、この近似は二変量正規分布を基礎としているため、強い非正規性があるデータへ分布形状を確認せずに使うことは適切ではありません。

実際、Bishara・Hittner(2017)は、非正規データでは通常のFisher変換によるPearson相関の区間が所定の被覆率を保てない場合を検討しています。そのため、外れ値や強い歪みがある場合は散布図とデータ生成過程を確認し、順位相関や再標本化による区間が研究目的に合うかを考えたうえで、0を含むかだけでなく正負のどの範囲までデータと整合するのかを読みます。

Rで関連の形と外れ値を比べる

base Rとstatsパッケージを使い、例数80のランダムに生成したデータセットを2種類用意しました。一方には傾き0.7、誤差の標準偏差0.8の線形関連を置き、もう一方には指数関数へ標準偏差1.2の誤差を加えた単調な曲線を置いたうえで、曲線データへマーカー値8、反応値-5の1点を追加して係数の変化を確認します。

set.seed(42)
linear_marker <- rnorm(80)
linear_response <- 10 + 0.7 * linear_marker + rnorm(80, sd = 0.8)
curve_marker <- runif(80, min = 0, max = 4)
curve_response <- 2 + 1.8 * exp(0.65 * curve_marker) +
  rnorm(80, sd = 1.2)

linear_pearson <- cor(linear_marker, linear_response, method = "pearson")
linear_spearman <- cor(linear_marker, linear_response, method = "spearman")
curve_pearson <- cor(curve_marker, curve_response, method = "pearson")
curve_spearman <- cor(curve_marker, curve_response, method = "spearman")
influential_marker <- c(curve_marker, 8)
influential_response <- c(curve_response, -5)
influential_pearson <- cor(influential_marker, influential_response,
  method = "pearson")
influential_spearman <- cor(influential_marker, influential_response,
  method = "spearman")
linear_ci <- cor.test(linear_marker, linear_response,
  method = "pearson")$conf.int

cat(sprintf("Linear: Pearson = %.6f, Spearman = %.6f\n",
  linear_pearson, linear_spearman))
cat(sprintf("Monotonic curve: Pearson = %.6f, Spearman = %.6f\n",
  curve_pearson, curve_spearman))
cat(sprintf("With influential point: Pearson = %.6f, Spearman = %.6f\n",
  influential_pearson, influential_spearman))
cat(sprintf("Linear Pearson 95%% CI = [%.6f, %.6f]\n",
  linear_ci[1], linear_ci[2]))
#> Linear: Pearson = 0.752748, Spearman = 0.709212
#> Monotonic curve: Pearson = 0.934794, Spearman = 0.958275
#> With influential point: Pearson = 0.648799, Spearman = 0.886631
#> Linear Pearson 95% CI = [0.638660, 0.834453]

線形データではPearson相関が0.753、Spearman相関が0.709で、Pearson相関の95%信頼区間は0.639〜0.834でした。この区間によって点推定0.753だけでは見えない推定の幅が分かりますが、区間内の値が全て同じ程度に確からしい、あるいは母相関がこの区間に入る確率が95%だと解釈するのではなく、同じ手続きを繰り返したときの被覆の性質として読みます。

一方、曲線データではPearson相関が0.935、Spearman相関が0.958となりました。これはSpearman相関が曲線一般を捉えるという意味ではなく、今回のデータでは全域に単調増加する形を置いたため順位関係がより一貫しており、どちらの係数も大きい場合でも線形関連と単調関連のどちらを報告するかという選択は残ります。

さらに、影響の大きい1点を加えると、Pearson相関は0.935から0.649へ0.286低下したのに対し、Spearman相関は0.958から0.887へ0.072低下しました。ただし、この結果は今回置いた1点についての観察であり、外れ値が常に相関を弱めるとは限らず、全体の傾向と同じ方向へ極端な点が置かれれば係数が大きくなる場合もあります。

左に線形関連、中央に単調増加する曲線、右に高いマーカー値と低い反応値を持つ影響の大きい1点を加えた散布図
図1 左では点が直線状に並び、中央では直線から曲がりながら順位はほぼ保たれています。右の橙色の1点を加えると、Pearson相関の低下幅がSpearman相関より大きくなりました。
influential_marker <- c(curve_marker, 8)
influential_response <- c(curve_response, -5)
png("draft/figures/correlation-patterns.png", width = 1100,
  height = 688, res = 200, type = "cairo")
par(mfrow = c(1, 3), mar = c(4.1, 4.1, 2.4, 1), las = 1,
  cex.axis = 0.72, cex.lab = 0.78, cex.main = 0.78)
plot(linear_marker, linear_response, pch = 16, col = "#2C7FB8",
  xlab = "Marker", ylab = "Response", main = "Linear pattern")
plot(curve_marker, curve_response, pch = 16, col = "#2C7FB8",
  xlab = "Marker", ylab = "Response", main = "Monotonic curve")
plot(influential_marker, influential_response, pch = 16,
  col = c(rep("#2C7FB8", 80), "#D95F0E"), xlab = "Marker",
  ylab = "Response", main = "Influential observation")
dev.off()

医学論文での報告と位置づけ

Schoberら(2018)は、医療研究でPearson相関を線形関連、Spearman相関を単調関連の要約として区別し、係数だけでなく散布図とともに解釈することを勧めています。そのため、方法には選んだ相関係数の種類、標本数、欠測値の扱いを記載し、結果には係数と信頼区間を示すと、何をどの精度で推定したかが伝わります。

一方、相関係数のp値だけでは効果の大きさと不確実性を評価できず、大標本では小さな相関でも帰無仮説と整合しにくくなり、小標本では研究上意味のある相関があっても区間が広くなることがあります。このため、固定的な強弱ラベルを付けるより、係数、95%信頼区間、散布図、測定尺度を合わせて報告する方が、研究目的に沿った解釈につながります。

実務では、私なら散布図を先に確認し、軸の取り違え、同一対象者の反復測定、群の混在、影響の大きい観測値がないかを見ます。特に、反復測定や群内構造があるデータでは通常の相関係数が観測の非独立性を扱わないため、対象者単位の構造を無視した係数を主結果にはせず、この記事では2変数の単純な相関係数に範囲を限ります。

研究目的と散布図を先に置く

ここまでの結果から、相関係数を解釈するときは符号と絶対値だけでは判断材料が足りず、線形関連を測るのか、順位に基づく単調関連を測るのかを研究目的から定めたうえで、散布図から関係の形、外れ値、対象集団のまとまりを確認します。そのうえで点推定と95%信頼区間を並べれば、関連の向きと大きさに加えて、標本からどの程度の不確実性が残るかまで区別できます。

したがって、Pearson相関とSpearman相関は係数が大きい方を採用するのではなく、研究で説明したい関係に対応する方を選びます。

参考文献

  1. Pearson K. VII. Mathematical contributions to the theory of evolution.—III. Regression, heredity, and panmixia. Philosophical Transactions of the Royal Society of London. Series A. 1896;187:253–318.
  2. Spearman C. The proof and measurement of association between two things. The American Journal of Psychology. 1904;15(1):72–101.
  3. Bonett DG, Wright TA. Sample size requirements for estimating Pearson, Kendall and Spearman correlations. Psychometrika. 2000;65(1):23–28.
  4. Bishara AJ, Hittner JB. Confidence intervals for correlations when data are not normal. Behavior Research Methods. 2017;49(1):294–309.
  5. Schober P, Boer C, Schwarte LA. Correlation coefficients: Appropriate use and interpretation. Anesthesia & Analgesia. 2018;126(5):1763–1768.

Popular Articles