만 휘트니 U 검정의 이해

초보자를 위한 SAS 통계분석 강좌의 맛보기 강의입니다.

강의 대본 보기

그다음, 만 휘트니 U 검정에 대해서도 살펴보도록 하겠습니다. 만 휘트니 U 검정은 어떨 때 사용하는 거라고 말씀드렸죠? 두 독립집단의, 평균이 아니라 순위의 차이를 살펴보는 거예요. 그래서 맨 처음에 하는 것이 모든 데이터에 순위를 매깁니다. 순위를 매겨서 그걸로 비교를 하는데. 구체적으로 보시면, 두 집단이 주어지는데 두 집단의 수로 U1과 U2라는 지수를 도출합니다. 여기에서 왜 순위를 사용하냐면 여기에 R1, R2가 있죠? 각각 샘플에 다 순위를 매긴 다음에 이걸 다 더한 값을 각각의 표본 수로 이렇게 처리한 다음에 이렇게 연산해서 U값을 구합니다. 그리고 U2값도 비슷한 방식으로 구하고요. 그래서 U1과 U2 값의 차이를 가지고 유의미성을 검사하는 기법이라고 보시면 될 것 같아요. 다음 슬라이드에서 좀 더 자세하게 설명하도록 하겠습니다. 만 휘트니로 두 집단의 순위 합의 차이를 보는 거예요. 그래서 A 집단의 순위 합을 먼저 구하고 B 집단의 순위합을 구합니다. 어떻게 구할까요? 여기를 보시면, 지금 가장 작은 점수가 12점이에요. 12점이면 가장 낮은 랭킹을 줬습니다, 1위. 가장 높은 순위가 여기 있죠. 12위는 90점, 가장 높은 점수를 줬어요. 그래서 샘플 집단을 따지지 말고 전체 샘플에서 그 숫자에 비례해서 랭킹을 줍니다. 가장 낮은 점수는 가장 낮은 랭킹을 주고 가장 큰 점수는 가장 높은 랭킹을 줘야 해요. 이건 절대적인 것은 아닙니다. 여러분의 해석 방향성에 따라서 순서는 바꾸어도 되지만 일반적으로 디폴트 상태에서 분석하시면 이런 식으로 순위가 배정됩니다. 순위를 다 배정한 다음에 여기에서 각 집단의 순위 합을 도출해요. 첫 번째 집단의 순위 합은 26.5이고 두 번째 집단은 51.5가 나왔습니다. 그래서 이 순서를 다시 한번 살펴보면 다음과 같습니다. 두 개의 U 값을 구해요. 아직 구하지는 않았어요. 우리가 앞서서 순위의 합만 구했습니다. 맨 처음에 설명해 드렸던 공식으로 U값을 구해요. 그중 작은 값을 선택합니다. 그래서 Mann Whitney U 테이블에서 임계값을 찾아요. 이 임계값보다 작아야 유의미한 겁니다. 이런 식으로 가설 검사가 이루어진다고 보시면 될 것 같습니다. 좀 더 구체적으로 들어가 보자면 첫 번째 집단에서 U 값을 한 번 구해볼게요. 어떻게 될까요? 이 공식에 따르면 이렇게 대입됩니다. 그러면 U1 값은 30.5가 나옵니다. 그다음에 두 번째 집단의 U2 값을 구해볼게요. 같은 식에 넣어보면 5.5라는 값이 나와요. 두 개 중에서 U2 값이 5.5로 더 작습니다. 기억해두세요. 그래서 Mann Whitney U 테이블을 보는 거예요. U값의 임계점을 찾기 위해서 U 테이블을 보는데 지금 샘플이 각각 집단 모두 6명이었습니다. 이때 허용오차를 0.05라고 해볼게요. 그러면 먼저 n1 집단에는 6명일 때 0.05면 이렇게 나왔고. 그다음 n2 집단에서는 6명일 때 5가 나왔습니다. 그래서 여기에서 임계값은 5입니다. 때문에, U2 값이 5.5가 나왔죠? 5.5는 무엇보다 작아야 유의미하다고 볼 수 있느냐? 지금 5보다 크죠. 그래서 결과적으로는 유의미하지 않습니다. 요약해보면 이런 식입니다. U1과 U2를 비교해서, 30.5와 5.5를 비교해서 U 테이블에서 유의미한 값을 찾았습니다. 그 값이 5였습니다. 5보다 작아야 유의미한 겁니다. U1과 U2 중에서 작은 것이 U2이기 때문에 5.5 값이 5보다 작아야 유의미한 겁니다. 실제로는 5.5가 5보다 크기 때문에 지금 유의미하지 않은 것으로 검정 결과가 도출되었습니다. 그래서 이 검정 결과를 기술할 때 결국에는 귀무가설이 기각되지 않았기 때문에 두 집단은 동일한 집단이라는 가설이 채택되었습니다. 결과는 이런 식으로 기술될 수 있어요. 만 휘트니 검정 결과, 집단 A 중앙값. 제가 말씀드렸죠? 비모수 기법을 쓸 때는 평균보다 중앙값, 중위값을 많이 쓴다. 같은 표현으로, 영어로 쓰시려면 Mdn. 이런 식으로 쓰셔도 됩니다. 차이는 유의미하지 않았다. 그래서 이때는 U값을 적어주셔야 해요. 어떤 U 값? 작은 U 값, 0.05, 이렇게 적어주시고. 이때 p 값은 0.55라고 해서 0.05 수준에서 유의하지 않았죠? 그래서 결국 A 집단과 B 집단은 통계적으로 만 휘트니 검정 결과 차이가 없다. 이렇게 귀무가설이 채택되었습니다. 이번 시간에는 짝지어진 집단 비교를 하는데 비모수적인 방법을 사용해서 진행해보도록 하겠습니다. 우리가 사용할 데이터 파일 이름은 여기 non_paired_t non parametric paired t SAS라는 프로그램이고 부호화된 순위 검정, wilcoxon 검정을 지금부터 실시해보도록 하겠습니다. 그러기 위해서 여러분들이 여기에 있는 데이터 파일이 여러분들의 작업 폴더 안에 있는지 확인 부탁드리겠습니다. 그러고 나서 우리가 이렇게 불러온 파일 이름은 여기에서 wilcoxon이라는 이름으로 워크 라이브러리에 저장된다고 보시면 될 것 같아요. 한 번 실행해보도록 하겠습니다. 이렇게 해서 실행. 이렇게 pre-test와 post-test 점수가 비교되고 있습니다. 우리가 육안으로 봐서는 그렇게 차이가 커 보이지 않는데 이러한 차이를, 지금 샘플 수가 7개밖에 안 되기 때문에 모집단, paired t-test를 하기에는 샘플 수가 작습니다. 그렇기 때문에 비모수적인 방법을 사용해서 지금부터 분석해보도록 하겠습니다. 여기에서는 약간 트릭 같은 걸 써야 해요. 원래 pre, post 점수를 활용하는 게 아니라 차이값을 만듭니다. paired t-test에서도 결국 이 차이값으로 정규성도 확인하고, 그에 따른 차이가 0과 유의미하게 다른지를 검사하는데 여기서는 동일한 절차를 순위로 한다고 생각하시면 될 것 같아요. pre 점수에서 post, 각각. 결과를 보시면 이거에서 이거 뺀 값을 difference 차이값으로 만들어서 정렬할 겁니다. 그리고 여기에 어떤 것은 플러스가 나오고, 마이너스가 나오겠죠? 그에 따른 순위를 가지고 이 차이가 유의미한지를 지금부터 살펴볼 거예요. 그래서 먼저 차이 점수 만드는 것을 실행해보겠습니다. wilcoxon이라는 데이터에서 지금 만드는 변수는 diff라는 변수입니다. 어떻게 만드냐면, 여기에 pre-post로 정해진 절차를 통해서 우리가 diff라는 점수를 만든다고 이해하시면 될 것 같습니다. 한 번 실행해 볼게요. 실행하면 데이터를 보시면 이런 식으로 마이너스, 마이너스. 거의 다 마이너스가 되어있네요? 그 말은 post 점수가 일괄적으로 좀 더 크다. 이렇게 얘기를 이해해볼 수가 있겠죠? 이런 식으로 살펴보았습니다. 그리고 이 코드를 통해서, 이 데이터 proc univar. 여기서는 재미있게 univariate이라는 우리가 정규성 탐색할 때 사용했던, 데이터 탐색할 때 사용했던 이 명령어를 통해서 간단하게 볼 수 있습니다. 거기의 결과 중의 일부가 이렇게 wilcoxon 테스트 검사를 할 수 있게 나와 있거든요? 그렇기 때문에 그걸 활용해서 분석하는 것이기 때문에 이런 식으로 진행된다고 이해하시고, 간단합니다. 이 variable에 diff, 우리가 만든 점수를 입력해주시면 됩니다. 그래서 실행. 실행이 완료되었습니다. 그래서 지금 여기에 diff 값에 대한 기술 통계가 나와 있어요. 평균-0.07 이렇게 나와 있는데, 이런 건 큰 의미가 없고요. 비모수를 하는 거기 때문에 이런 건 사실 큰 의미가 없습니다. 지금 우리는 그 차이가 유의미한지를 보는 거예요. 그래서 여기서 우리가 참고하면 되는 것은 signed rank라는 이 부분을 참고하시면 됩니다. 어차피 두 개의 결과가 동일하게 나오기는 하지만 지금 보시면 이 signed rank가 signed rank 값이 -10.5가 나오고요. 중요한 것은 여기에서 이 차이가 유의미한지를 볼 수 있습니다. 기본적으로 양측검정이 되어있고 결국 귀무가설의 이 차이가 0이다. 한마디로 차이가 없다는 귀무가설이 기각되죠? 0.05보다 작기 때문에. 그래서 반대로, 데이터를 보시면 post 점수가 pre 점수보다 유의미하게 크다는 결론을 내릴 수 있겠죠. 그렇게 해서 간단하게 짝지어진 t 집단 간의 차이를 비교할 때 윌콕슨 검정을 한 번 해 보았습니다. 재미있는 게 윌콕슨 검정이라는 항목이 따로 있는 것이 아니라 univariate이라는 procedure 안에 하단에 보시면 이런 식으로 전체적으로 다 테스트해줍니다. 우리가 이걸 활용해서 분석했다고 이해하시면 될 것 같습니다. 그래서 코드는 전체적으로 어렵지 않게. 약간 난해한 부분이 있다면 이 차이값을 기준으로. 차이값은 post에서 pre를 빼나, pre에서 post를 빼나 크게 관련이 없습니다. 관심 있는 것은 차이가 있다는 것을 보는 게 주된 목적이기 때문에 부호가 바뀌어도 결국은 p값을 기준으로 해석하기 때문에 큰 문제는 없다고 생각하시면 될 것 같습니다. 그런데 여러분들이 그 방향성에 관심이 있으시면 결과값에서 부호를 봐주시면 돼요. 이 부호가 어떻게 되어있죠? 부호가 지금 마이너스로 되어있어요. 마이너스로 되어있는 건 우리가 이렇게 생각해볼 수 있습니다. 지금 pre 수에서 post 점수를 뺀 거예요, 그렇죠? 그렇기 때문에 마이너스라는 것은 결국 post점수가 더 크다는 의미입니다. 반면에 플러스라는 것은 어떻게 된 거죠? pre 점수가 더 크다는 의미입니다. 이런 식으로 방향성을 가늠해볼 수 있다고 생각하시면 됩니다. 이렇게 해서 이 정도로 비모수적인 대응 쌍 비교를 마치겠습니다.

이 강좌의 맛보기 강의

초보자를 위한 SAS 통계분석
초보자를 위한 SAS 통계분석강좌 자세히 보기