현재 JMP에서는 Pearson도 Spearman 혹시 P 값은 ( z 변환 필요 없음) t 분포 근사의 값입니다. 그러나 Fisher z 변환에서 P 값 계산을 간절히 열망한다. 특히 최근 생물계의 게시 논문에서는 상관 계수 Pearson도 Spearman도 잘 보인다. 이 경우, Fisher z 변환으로부터의 P값 산출이 압도적으로 많다. 잘 부탁드립니다. 또한 신뢰 구간 구성도 가능한 한 Fisher z 변환에 의한 95 % 신뢰 구간 구성을 원하는 것이다. (덧붙여 본건에 관해서 정확법까지는 불필요하다)
요청을 보내 주셔서 감사합니다.
또, 당사 그룹 내에서의 교환에 시간이 걸리고, 회신이 늦어서 죄송합니다.
SAS Institute Japan 주식회사 JMP 재팬 사업부에서 테스터를 하고 있습니다 오노라고 합니다.
Pearson과 Spearman의 상관 계수에 대한 p- 값에서 Fisher의 Z 변환 근사 방법도 옵션으로 추가하기를 원했습니다. 이 방법을 요청 목록에 추가했습니다. 게다가 우리 쪽에서 검토를 실시하고 싶습니다.
현재 ' 다변량 상관 '플랫폼에서 Pearson과 Spearman의 상관 계수에 대한 p-값은 Student의 t 분포로부터 계산됩니다.
Pearson의 상관 계수에 대해 ,이 Student의 t 분포에 기초한 p-값은 다음과 같은 조건 하에서 정확한 p-값입니다.
- 각 관측 벡터의 분포는 다변량 정규 분포로부터의 독립 동일 분포이다.
- 결측치가 없다.
- 귀무 가설은 H0 : ρij = 0이다 (여기서 ρij는 제 i 변수와 제 j 변수 사이의 Pearson의 모상 관계 수)
JMP의 현재 ' 다변량 상관 '플랫폼에서 피어슨의 상관 계수에 대한 신뢰 구간은 피셔의 Z 변환 근사(바이어스 항을 포함하지 않는 것)로부터 계산됩니다. 따라서 신뢰 구간이 특정 상수 c(-1.0<1.0)를 포함하지 않으면 귀무 가설 "H0: ρij = c"가 거부됨을 의미합니다(기본 신뢰 계수는 95 %, 즉 유의 수준 5%입니다.)
표본 크기가 어느 정도 크면 귀무 가설 「H0: ρij = 0」에 대한 검정으로서, Student의 t분포에 기초한 검정도, Fisher의 Z변환에 기초한 검정도 비슷한 결과가 됩니다. 다만, 특히 소표본의 경우에는, 양자의 결과는 다른 것입니다. 이 때문에 현재 다변량 상관 '플랫폼에서는 검정과 신뢰 구간이 서로 다른 결과가 될 수 있습니다(통계적 검정에서는 'H0: ρij = 0'이 기각되는데 신뢰 구간이 0을 포함할 수도 있다. 그 반대의 관계가 될 수도 있습니다.) 이것은 사용자에게 다소 혼란을 일으킬 수 있습니다. 그러나 위에서 언급 한 Student의 t 분포를 기반으로하는 방법은 위의 조건 하에서 정확한 방법이며 계산이 간단합니다. 한편, "정확"한 신뢰 구간은 계산이 다소 어렵습니다. 이러한 이유로, p값으로는 Student의 t분포를 사용하고, 신뢰 구간으로서는 Fisher의 Z변환 근사를 이용하는 것은 합리적이라고 생각하고 있습니다.
현재 ' 다변량 상관 플랫폼에서 Spearman의 상관 계수에 대한 신뢰 구간은 계산되지 않습니다.
'정확한' 검정과 신뢰 구간에 대해 우리가 아는 한 두 가지 방법이 있습니다. 하나는 Pearson의 상관 계수에 대해 다변량 정규 분포를 전제로 계산되는 신뢰 구간입니다. 이 방법은 ρij≠0인 경우에는 수치 적분이 필요합니다. 계산이 복잡할 수도 있고, 여기의 생각에 따른 ρij≠0에 대한 정확한 검정, ρij에 대한 정확한 신뢰 구간은 그다지 보급되지 않는 것으로 보입니다. 또 다른 정확성 테스트는 정렬 테스트를 기반으로 한 방법입니다. 재정렬 검정은 조건부 "정확"한 방법입니다. ρij≠0일 때, 어떻게 재배열을 하면 되는지가 어렵습니다. 어떠한 정확한 방법도, JMP 에서는 구현되고 있지 않습니다. 유일하게, "H0: ρij=0"일 때, Student의 t 분포에 기초한 (다변량 정규 분포일 때) 정확한 방법이 Pearson의 상관 계수에 대해서만 제공되고 있습니다.
정리하면, 현재의 JMP에서는 다음과 같은 만들기가 되어 있습니다.
- Pearson과 Spearman의 상관 계수에 대한 p-값은 Student의 t-분포를 기반으로 계산됩니다.
- Pearson의 상관 계수에 대한 신뢰 구간은 Fisher의 Z 변환(바이어스 항 없음)에 의한 근사로 계산됩니다.
- Spearman의 상관 계수에 대한 신뢰 구간은 계산되지 않습니다.
현재의 JMP상에서, Fisher의 Z변환 근사로부터 p값을 계산하고 싶은 경우에는, JMP스크립트 언어(JSL; JMP Scripting Language)로 프로그래밍을 할 필요가 있습니다. 코드는 다음과 같습니다 (아래 코드는 바이어스 항이없는 Fisher의 Z 변환으로 인한 것입니다). 만약 아래와 같은 코드에 의한 Fisher의 Z변환 계산에 관심이 있다면 답장해 주세요. 코드에 대해 설명합니다. 또, 이하는 계산 방법을 알기 쉽게 제시하기 위한 것입니다만, 한층 더 범용성이 있는 코드로 할 수도 있습니다.
r = 0.4;
n = 15;
z = 0.5 * Log((1+r)/(1-r));
up_z = z + Normal Quantile(0.975)*Sqrt(1/(n-3));
low_z = z - Normal Quantile(0.975)*Sqrt(1/(n-3));
Show((Exp(2*low_z)-1)/(Exp(2*low_z)+1));
Show((Exp(2*up_z)-1)/(Exp(2*up_z)+1));
p_z = 2*Normal Distribution(-Abs(z*Sqrt(n-3)));
Show(p_z);
t = r * Sqrt((n-2)/(1-r^2));
p_t = 2 * T Distribution(-Abs(t), n - 2);
Show(p_t);
장문, 실례했습니다.
요청을 보내 주신 것을, 거듭 감사드립니다.
상기의 회신에서 불충분・불명한 점등 있으면, 수고스럽지만 회신해 주십시오.
오노님
연락 주셔서 감사합니다.
서두르지 않기 때문에 오히려 정중하게 답변 해 주셔서 감사합니다.
따라서 다음과 같습니다.
(1) Spearman의 상관 계수에 대한 Fisher Z 변환에 의한 바이어스 보정이 있는 95% 신뢰 구간 구성은 포기합니다.
(2) Pearson과 Spearman의 상관 계수에 대한 p 값에 관해서는 "Fisher Z 변환", "Student의 t 분포 (현재 탑재 됨)", "정확법"중 역시 "Fisher Z 변환"에 의한 P 값을 논문에 기재하고 싶기 때문에,
Pearson과 Spearman의 상관 계수에 대한 p-값의 경우,
1) Fisher의 Z 변환 계산에 관심이 있고 코드에 대해 해설 희망
2)Fisher의 Z변환 계산에 관심이 있고 범용성이 있는 코드 해설 희망
됩니다.
위의 (2)에서 「정확법」은 포기합니다.
배경은 20-30례의 임상 이미지 분석에 사용하고 싶기 때문에 소수례 20-30례이기 때문입니다.
저는 현재 JMP15.2 (win10의 64 비트 버전)를 사용하고 있습니다.
계속해서, 잘 부탁드립니다.
아래 링크의 페이지에, 해설의 PDF 문서와, 프로그램 예를 업로드했습니다.
프로그램 예제(Fisher의 z변환)
PDF 문서에서는 JMP 스크립팅 언어의 개요를 먼저 설명한 다음 Fisher의 z 변환 근사에 의한 p-값과 신뢰 구간을 찾는 방법을 설명했습니다. 마지막으로, 보다 범용적으로, 이들을 요구하는 프로그램 예를 제시했습니다.
jsl 확장자가있는 파일은 예제 프로그램입니다. 이 파일을 먼저 다운로드하고 분석 대상 데이터 테이블을 JMP로 연 후 [파일] → [열기]로 같은 파일을 엽니다. 오른쪽 클릭으로 불러온 메뉴에서 [스크립트 실행]을 선택하면 같은 프로그램이 실행됩니다. 호출된 시작 대화상자에서 분석할 열을 선택합니다.
불명한 점이나 미비 등을 보면, 회신해 주실 수 있으면 고맙습니다.