2016년 2월 23일 화요일

아빠가 들려 주는 [통계] 짝지은 자료의 분석(2) McNemar test 논문에서 어떻게 표현할까?


 
McNemar test에 대해서 알아 보았습니다.
실제 실행하는 것은 모든 통계 프로그램에서 가능하기 때문에
따로 강조할 필요는 없을 것같군요.
그런데, McNemar test의 결과를
단순히 p값만으로 보여 주는 것보다는
오즈비와 95%신뢰구간 등으로 보여 주는 것이 바람직합니다.

 
그래서, McNemar test의 오즈비와 위험차의
구해 보았습니다.
보통 통계 프로그램들이 잘 보여 주지 않기에
한번 만들어 보았습니다.
(1)노란 곳에 먼저 자료를 입력합니다.
(2) 넣어도 됩니다. 사실 저는 개인적으로 (1)에 넣는 것을 더 권장합니다
(3)p값이 보여지는데 3가지나 됩니다.
(4)에 조건이 3가지 있기 때문입니다.
그 중에 연속성을 수정하지 않은 것이나, 1.0으로 수정한 두 가지가 많이 사용됩니다.
그냥 아무런 언급없이 모두 그냥 McNemar test라고 부르기도 합니다.
(5)오즈비 즉 OR과 그것의 95%신뢰구간도 논문에 같이 써 줄 수 있습니다.
그런데 이 신뢰구간이 공식에 따라서 좀 다양합니다. 그것은 다음그림에서 보여 드리겠습니다.
(6)위험차(risk difference) 이것의 95%신뢰구간도 보여주는 논문이 있습니다.
압도적으로 오즈비가 많이 쓰이지만, 무작위대조연구(RCT)인 경우는 RD 저는 더 좋다는 생각도 합니다.
그 아래에는
위험차와 그 신뢰구간을 보여 줍니다.
논문에서는 연속성이 수정되거나 혹은 수정되지 않았거나
둘중에 하나를 택해서,
P값을 보여줍니다.
그리고, 오즈비와 그것으니 95%신뢰구간을 표시할 수 있습니다.
오즈비 대신에, 위험차(risk difference)를 사용해도 되겠습니다.

 
http://graphpad.com/quickcalcs/mcNemar2/ 의 결과로,
2X2 table, 보여 주면서, p (1)을 보여 주는데, 연속성 수정한 값이라고 말해 줍니다.(2)
아울러 odds ratio를 보여 줍니다(3)
그런데, odds ratio95% 신뢰구간이 앞의 것과 조금 다르죠.


 
http://www.vassarstats.net/
의 결과입니다.
(1) p값은 연속성 수정한 p값과 아주 가깝습니다.
이값은 사실 exact McNemar test의 값입니다. (b+c의 값이 1000이하이면)
(2)에서 설명해 주고 있죠.
(2)에서 오즈비의 값은 같으나,
95%신뢰구간은 역시 다릅니다.


 
사실 McNemar testodds ratio95% 신뢰구간을 구하는 방법은 다양합니다.
이 논문에서 24가지를 비교하였습니다.
그 중에서 2가지가 좋다고 하였네요.
관심있는 분은 이 논문을 무료로 볼 수 있습니다.


 
많이 알려져 있지 않지만, NCSS 라는 통계 프로그램의 매뉴얼을
인터넷에서 검색할 수 있습니다.
여기에는 Risk Difference에 대해 4가지 방법
Risk Ratio에 대해서 2가지 방법
Odds Ratio에 대해서 2가지 방법으로
Confidence interval을 구하고 있습니다.
사실 이것만 하더라도,
상당히 우수하고 적절한 프로그램이라 할 수 있을 것같습니다.


 
이 프로그램은 이 그림을 그려 주는데, 이것만해도 그나마 적절합니다.
그림에 대해서는 다시 이야기 하겠습니다.
 
의학용인 MedCalc의 경우에는 Risk Difference와 신뢰구간을 제시합니다.
엑셀에서와 비슷한 값입니다.
 
STATA의 경우에는 OR, RR, RD95% 신뢰구간을 모두 구해 줍니다.
P값은 연속성을 수정하지 않는 McNemar testexact test의 결과를 보여 주고 있습니다.
SPSS는 연속성 수정한 McNemar testexact test의 결과를 보여 주고 있습니다.
OR 등에 대해서는 관심이 없군요. (물론 최신 버전은 다를 수도 있습니다)
어쨌든 다양한 공식이 있긴 하지만, 
OR, RR, RD중의 하나와 그95% 신뢰구간를
본문에 표시해 주는 것을 저는 권합니다.


 
이제 어떤 그래프가 좋을지 생각해 봅시다.
통계프로그램이 그려 주는 그래프는 이것이 다고,
논문에서도 이런 식의 그래프를 본 적있습니다.
사실 McNemar test를 주되게 검정하는 논문이 많지 않아서
그래프로 보기는 쉽지 않을 것입니다.
잘보면 이것은 risk를 보여주는 것으로
2X2 table에서의 A,B,C,D가 무엇을 말하는지
표를 생각해 보세요.
그런데 이렇게 표를 그리면 두 RISK를 비교해 볼 수 있습니다

 
이것은 제가 만든 그래프로, Odds RatioRisk Ratio
Risk difference 를 동시에 표현할 수 있습니다.
그래프라는 것은 가급적 원래의 자료를 그대로 가지고 있으면서
요약된 정보를 잘 간직해야 하는데,
이렇게 한 그림으로 여러 정보를 잘 나타낼 수 있기 때문에
꽤 좋은 그래프라고 할 수 있습니다.


 
원래의 자료를 보다 잘 나타내기 위해서 이런 변형도 가능합니다.
이렇게 만들면, 전체의 키가, total 표를 반영해 주게 됩니다.


 
너무 복잡해서, D 값을 이렇게 아래에 표시하는 것도 생각할 수 있습니다.
원래의 자료를 모두 표시해 준다는 장점은 있습니다만,
Total값을 모두 알수는 없습니다

 
결론적으로 이 두 차트가 가장 적당한 듯합니다.
이것 역시 위의 엑셀 표의 노란칸에 숫자를 넣으면
자동으로 표가 그려지도록 만들었으므로
복사해서 사용하시면 됩니다.



한편 앞서 보았듯이 McNemar test의 경우도
연속성 수정을 한것과 하지 않은 것
그리고, exact McNemar test라고도 불리는 것이 있습니다.
3가지가 있고 모두 그냥 McNemar test라고 부릅니다.
exact McNemar test
dBSTATbinorminal test라고 구분하여 표시합니다.



R에서는 적절한 패키지와 라이브러리를 사용하면
연속성 수정된 McNemar testexact McNemar test를 구할 수 있고,
이렇게 오즈비와 신뢰구간을 구할 수 있습니다.




아래는 위에서 설명한 엑셀 쉬트입니다. 입력하면 결과값을 얻을 수 있습니다.






아래는 McNemar test에 어울리는 차트를 만들어 보았습니다. 
해석의 위의 설명에 나와 있습니다.



2016년 2월 22일 월요일

아빠가 들려 주는 [통계] Fisher’s exact test 누가 만들었을까? *논문쓰기에 전혀 도움되지 않음-그래도 재미는 있음

누가 Fisher’s exact test를 만들었을까?
이런 어리석은 질문이 있을까요?
당연히 Fisher.
그런 것은 알아서 무슨 소용이 있을까?
, 아무 소용없습니다.
그렇지만, 이런 이야기도 가끔 들어 두면
전체의 그림을 이해하는데 도움이 됩니다.
게다가 이런 식의 꼭 도움이 안되는 이야기들은
기억에 잘 남는 이상한 경향이 있습니다.

처음 exact test에 대한 언급은 1934, Fisher의 책에 나옵니다.
이 것은 Yates’s의 논문이 나온 것과 같은 해이지요.
이 책에는 Yates의 연속성 수정에 대한 이야기도 나옵니다.
, FisherYates의 연속성 수정에 관한 논문과 글을 읽어 보았거나
개인적인 교류로 알게 되었을 수도 있습니다.
사실 Yates는 Fisher의 조교였거든요. 
 Yates came to prominence as a statistician when he began working at
Rothamsted Experimental Station in 1931 as an assistant to R. A. Fisher,
who was already highly prominent at that time. When Fisher left Rotham-
sted two years later, Yates rose to head of the Statistics Department, where
 he remained for 35 years, while still continuing collaborations with Fisher
(Nelder 1997). It is natural, albeit somewhat unfortunate, that Yates’ legacy
is so closely tied to Fisher. 

어쩌면 Irwin exact test를 처음 만든 사람일지도 모릅니다.
1935년도에 이것을 논문으로 발표했으니까요.
Fisher 책이 나온 다음해죠.




Irwin의 논문의 각주에서,
이 논문의 내용은 1933년에 결론났다.
그런데 이 이 논문 발표가 지연되었다.
그 동안 동일한 내용을 다루는 논문이,
그리고, 어떤 면에서 더 완벽한 논문이
Yates에 의해 출판되었다
라고 되어 있습니다.



 
그러면, Yates1934년 논문을 보겠습니다. 이것은 Fisher 책과 같은 해 입니다.
Irwin은 단지 2X2 table에 대해서만 다루지만, Yates는 더 넓게 다루고 있습니다.
그리고, Yates는 이것을 주제로 다룬 것이 아닙니다.
연속성 수정이 주된 이야기 이죠.
다시 말하면, Irwinexact test 자체에 초점맞추어 논문을 쓴 거죠.


 
연도별로 생각해 보면, 정리가 됩니다.
최소한 발표된 논문으로만 본다면,
Yates가 가장 먼저 이야기 하고 있습니다.
논문의 각주를 고려한다면, Irwin이 가장 먼저 생각한 것은
맞는 듯합니다.
FisherYates도 그것을 알고 있었지만,
논문으로 나온 것이 아니라서 참고 문헌으로 소개할 수
없었을 가능성이 있습니다.
Yates가 그것에만 맞추어 자세히 이야기 하지 않은 것도
그 이유 때문일 수 있습니다.
어쩌면 Irwin의 논문이 논문을 제출했지만,
논문 리뷰어(reviewer)이 책상에서 미적미적되고 있는 동안
또는 사무적인 실수로 발표가 늦추어 지는 동안
(어쩌면 Fisher가 그것을 보았을 수도 있지요.
그리고, 전혀 악의없이 자기의 책에 소개했을 수도 있고요.
그가 자기 이름을 의도적으로 붙이이 않아도
다른 사람이 그렇게 부를 수도 있죠.
Fisher는 너무도 유명한 사람이니까.
혹은 Irwin은 완전히 독립적으로 비슷한 개념을 생각했을 수도 있습니다.)


위에서 언급한 내용들은
모두 이 글에서 뽑은 것입니다.
“Yates and Contingency Tables: 75 Years Later”
이 제목으로 찾아보면 전문을 무료로 볼 수 있습니다.
사실 이 안에는 더 많은 내용이 나옵니다.
Yates를 중심에서 다루고 있죠.
Fisher exact testexact 한가에 대한 이야기도 다루고 있고……
이전에 잠깐 다룬 적이 있는 내용인데,
다른 관점에서 다루고 있네요.
이 이야기는 다음에 이야기할 기회가 있을 것 같습니다.
어쨌든 저자의 표현을 빌리면,
홈즈(Fisher)왓슨(Yates)이 아니라,
RuthGehrig의 관계라고 말합니다. (둘 다 유명한 야구선수)
본문에 이런 표현도 있네요.

Healy (1995b), while noting
that Yates was “undoubtedly Fisher’s follower and stood in [Fisher’s] shade,”
suggested that Yates’ work was a major impetus for Fisher’s statistical insights spreading through the larger scientific community.
Healy rated Yates (as a practicing statistician) at least as highly as Fisher.



http://me2.do/FialREkt