
v1 상관계수 (Pearson) 는 선형 관계 만 포착. 비선형이지만 단조 (monotonic) 관계에는 둔함:
Spearman (1904) 는 값 대신 순위 (rank) 에 Pearson 을 적용 → 단조 관계면 (혹은 ). 이상치에도 더 강건.
동률(tied) 처리가 표준 scipy 방식과 일치하도록 average rank 사용.
| 성질 | Pearson | Spearman |
|---|---|---|
| 범위 | [-1, 1] | [-1, 1] |
| 선형 관계 필요 | 예 | 아니오 (단조면 충분) |
| 이상치 민감도 | 높음 | 낮음 (순위 기반) |
| 대칭성·대각 1 | 예 | 예 |
함수 spearman_correlation(X) 를 완성하세요.
X shape (N, D).(D, D) Spearman 상관 행렬.np.argsort(np.argsort(col)) 로 basic rank, 동률은 동률 그룹의 평균 순위 로.scipy.stats.rankdata(col, method='average') 동치 필요.| # | 이름 | 검증 |
|---|---|---|
| 1 | shape (D, D) | |
| 2 | 대칭 + 대각 = 1 | |
| 3 | 범위 [-1, 1] | |
| 4 | 완벽 단조 → ρ = 1 | Pearson 은 그렇지 않음 |
| 5 | 동률(ties) 처리 average rank | |
| 6 | 이상치에 Pearson 대비 강건 | 1개 outlier 추가 전후 변화 |
| 7 | scipy.stats.spearmanr 과 일치 |
코드를 작성하고 Run 을 눌러보세요.