답변:
데이터를 탐색하려면 Spearman (S)과 Pearson (P) 상관 관계가 일부 정보를 제공하므로 두 가지를 모두 계산하는 것이 가장 좋습니다. 간단히 말해 S는 순위로 계산되므로 단조로운 관계를 나타내며 P는 실제 값에 있고 선형 관계를 나타냅니다.
예를 들어 다음을 설정 한 경우 :
x=(1:100);
y=exp(x); % then,
corr(x,y,'type','Spearman'); % will equal 1, and
corr(x,y,'type','Pearson'); % will be about equal to 0.25
이것은 가 와 단조 증가 하기 때문에 Spearman 상관 관계는 완벽하지만 선형 적이 지 않기 때문에 Pearson 상관 관계가 불완전하기 때문입니다.
corr(x,log(y),'type','Pearson'); % will equal 1
S> P가있는 경우 단조이지만 선형이 아닌 상관 관계가 있음을 의미하므로 두 가지를 모두 수행하는 것이 흥미 롭습니다. 통계에 선형성을 갖는 것이 좋기 때문에 (쉬운) (예 : 로그) 에 변환을 적용 할 수 있습니다 .
이것이 상관 관계 유형의 차이점을 이해하기 쉽게 만드는 데 도움이되기를 바랍니다.
가장 짧고 대부분 정답은 다음과 같습니다.
Pearson은 선형 관계를 벤치마킹하고 Spearman은 단조로운 관계를 벤치마킹합니다 (더 일반적인 경우는 거의 없지만 일부 전력 절충의 경우).
따라서 관계가 선형 (또는 특별한 경우 두 가지 측정 기준이므로 관계는 )이고 상황이 너무 위태 롭지 않다고 가정 / 생각하면 (자세한 내용은 다른 답변을 확인하십시오) Pearson과 함께하십시오. 그렇지 않으면 Spearman을 사용하십시오.
이것은 통계에서 자주 발생합니다. 상황에 적용 할 수있는 다양한 방법이 있으며 어떤 방법을 선택할지 모릅니다. 고려중인 방법의 장단점과 문제의 세부 사항을 결정해야하지만, 결정은 일반적으로 합의 된 "올바른"답변없이 주관적입니다. 일반적으로 합리적으로 보이는 것처럼 많은 방법을 시도하고 인내심으로 어떤 결과가 가장 좋은 결과를 낼 수 있는지 알아 보는 것이 좋습니다.
Pearson 상관 관계와 Spearman 상관 관계의 차이점은 Pearson이 구간 스케일 에서 측정 한 측정에 가장 적합 하고 Spearman이 서수 스케일 에서 측정 한 측정에 더 적합하다는 것 입니다. 간격 눈금의 예에는 "화씨 온도"및 "인치 길이"가 포함되며, 여기서 개별 단위 (1 ° F, 1 인치)는 의미가 있습니다. "만족도"와 같은 것은 "5 행복"이 "3 행복"보다 더 행복하다는 것이 명백하기 때문에 "1 행복의 행복"에 대한 의미있는 해석을 줄 수 있는지는 확실하지 않기 때문에 순서 형 경향이 있습니다. 하지만 합치면 귀하의 경우에있는 서수 유형의 많은 측정은 실제로 서 수도 간격도 아니고 해석하기 어려운 측정으로 끝납니다.
만족도 점수를 Quantile 점수 로 변환 한 다음 그 점수의 합으로 작업하는 것이 좋습니다 . 해석에 좀 더 적합한 데이터가 제공됩니다. 그러나이 경우에도 Pearson 또는 Spearman이 더 적합한 지 명확하지 않습니다.
나는 오늘 흥미로운 코너 사건에 부딪쳤다.
아주 적은 수의 샘플을보고 있다면 Spearman과 Pearson의 차이가 극적으로 나타날 수 있습니다.
아래의 경우 두 방법은 정확히 반대의 상관 관계를 보고합니다 .
Spearman과 Pearson을 결정하는 몇 가지 간단한 규칙 :
ps 다음은 위의 그래프를 재현하는 R 코드입니다.
# Script that shows that in some corner cases, the reported correlation for spearman can be
# exactly opposite to that for pearson. In this case, spearman is +0.4 and pearson is -0.4.
y = c(+2.5,-0.5, -0.8, -1)
x = c(+0.2,-3, -2.5,+0.6)
plot(y ~ x,xlim=c(-6,+6),ylim=c(-1,+2.5))
title("Correlation: corner case for Spearman vs. Pearson\nNote that they are exactly opposite each other (-0.4 vs. +0.4)")
abline(v=0)
abline(h=0)
lm1=lm(y ~ x)
abline(lm1,col="red")
spearman = cor(y,x,method="spearman")
pearson = cor(y,x,method="pearson")
legend("topleft",
c("Red line: regression.",
sprintf("Spearman: %.5f",spearman),
sprintf("Pearson: +%.5f",pearson)
))
찰스 답변에 동의하면서, 나는 당신이 두 계수를 계산하고 그 차이를 살펴볼 것을 제안합니다. 많은 경우에, 그것들은 정확히 같을 것이므로 걱정할 필요가 없습니다.
그러나 서로 다르면 Pearsons (일정한 분산 및 선형성)의 가정을 충족했는지 여부를 살펴보고이를 충족하지 않으면 Spearmans를 사용하는 것이 좋습니다.