일반적인 상관 계수 (2d)는 점 집합이 선으로 얼마나 잘 설명 될 수 있는지를 측정하며, 그렇다면 해당 부호는 양의 상관 관계가 있는지 여부를 나타냅니다. 그러나 이것은 점의 좌표가 실제로 측정과 같이 정량적으로 해석 될 수 있다고 가정합니다.
그렇게 할 수는 없지만 좌표를 정렬 할 수 있는 경우 순위 상관 계수 가 있습니다 . 단조 함수로 점을 얼마나 잘 설명 할 수 있는지 측정합니다 .
도전
2d 포인트의 목록이 주어지면 순위 상관 계수를 결정하십시오 .
세부
- 입력을 양의 정수 (필수는 아님) 또는 다른 "정렬 가능한"값으로 가정 할 수 있습니다.
- 점은 점의 목록 또는 x 및 y 좌표에 대한 두 목록 또는 행렬 또는 2d 배열 등으로 사용할 수 있습니다.
- 출력은 0과 1 사이의 실수를 나타내므로 부동 소수점 또는 합리적인 유형이어야합니다.
정의
순위 : 숫자 목록이 주어지면 각 항목에 rank 라는 X=[x(1),...,x(n)]
양수를 지정할 수 있습니다 . 우리는리스트를 정렬 하고 정렬 된리스트에서의 인덱스를 할당함으로써 그렇게한다 . 둘 이상의 값이 동일한 경우 모든 해당 인덱스의 산술 평균을 순위로 사용합니다. 예:rx(i)
x(i)
x(i)
rx(i)
x(i)
List: [21, 10, 10, 25, 3]
Indices sorted: [4, 2, 3, 5, 1]
여기에 숫자 10
가 두 번 나타납니다. 정렬 된 목록에서 인덱스 2
와를 차지합니다 3
. 그것들의 산술 평균 2.5
은
Ranks: [4, 2.5, 2.5, 5, 1]
순위 상관 계수는 :하자가 [(x(1),y(1)),(x(2),y(2)),...,(x(n),y(n))]
주어진 포인트가 될 경우 각 x(i)
과 y(i)
실수 각각의 경우 (wlog 당신은 정수 가정 할 수있다.) i=1,...,n
우리가 계산 순위 rx(i)
와 ry(i)
의 x(i)
와 y(i)
각각.
하자 d(i) = rx(i)-ry(i)
수 순위의 차이를 과하도록 S
합 S = d(1)^2 + d(2)^2 + ... + d(n)^2
. 그런 다음 순위 상관 계수 rho
는
rho = 1 - 6 * S / (n * (n^2-1))
예
x y rx ry d d^2
21 15 4 5 -1 1
10 6 2&3 -> 2.5 2 0.5 0.25
10 7 2&3 -> 2.5 3 -0.5 0.25
25 11 5 4 1 1
3 5 1 1 0 0
rho = 1 - 6 * (1+0.25+0.25+1)/(5*(5^2-1)) = 0.875
2.5
.