2016년 2월 20일 토요일

아빠가 들려 주는 [통계] 잔병이 많아야 오래 산다? Big Data로 밝혀보자


빅데이터로 분석한 한 예를 찾아 보겠습니다.
 

이 논문이고요, 2011JAMA에 나온 것입니다.
이 정도면 쟁쟁하죠.
5심혈관질환의 위험인자인
hypertension, smoking, dyslipidemia, diabetes,
그리고 family history of coronary heart disease
의 유무를 분석했고
542,008명의 최초 심근 경색이 발생한 환자에서,
재발생에 대해 연구했습니다.
National Registry of Myocardial Infarction, 1994-2006.
국가 등록에서 조사한 것입니다.

Center for Cardiovascular Prevention, Research and Education, Watson Clinic LLP, Lakeland, Florida ;
University of Massachusetts Medical School, Worcester ;
University of Alabama Medical Center, Birmingham ;
Duke Clinical Research Institute, Duke University Medical Center, Durham, North Carolina ;
ICON Late Phase & Outcomes Research, San Francisco, California ;
Harbor-UCLA Medical Center, Torrance, California ;
Beth Israel Deaconess Medical Center, Harvard Medical School, Boston, Massachusetts ;
University of Pennsylvania, Philadelphia ;
Virginia Commonwealth University, Richmond ; Wayne State University School of Medicine, Detroit, Michigan ;
Mid Michigan Health, Midland ;
Washington University School of Medicine, St Louis, Missouri Northwestern University, Clinical and Translational Sciences Institute, Chicago, Illinois .

정말 쟁쟁한 병원의 연구진들이 이 연구에 참여하였습니다.



 
그런데, 주된 결과인 이것,
Figure 2입니다.
Fisk factor가 적을수록(위의 것들)
더 사망률이 높다는 것.
이게 왠일입니까?


 
그림 2 아래 있는 설명입니다.
엄청 많은 변수들을 넣었습니다.


논문의 결론입니다.
그림에서 보다시피,
위험인자가 많을수록 병원에서 사망률이 적어진다는 것.
왜 그럴까요?
우리가 측정하지 못한 교란변수일까요?
그런데 저자들은 여러 교란변수에 대해서 extensive adjust를 했다고 했고
Subgroup에 대해서도 분석했습니다.

이 결론에 대해서 우리는 무엇을 생각할 수 있을까요?

병원외 사망률
아주 위험한 사망의 경우에는 병원에 오기 전에 이미 사망하지 않을까요?
그렇다면, 이 국가 자료 자체의 문제가 있는 셈이군요
제대로 조사가 안된 거니까요. 

혹시 위험인자가 많은 사람은 
더 심근 경색이 오지 않도록 조심하는 것은 아닐까요?
갑자기 추운 것에 노출하지 않고, 항상 마음을 안정화 시키려고 노력하고,
또 병원 가까이에 살면서 응급조치할 준비를 하거나
응급약을 항상 준비하고 다니는 것은 아닐까요?
그런 것에 대한 변수는 미리 측정하지 않은 것같은데요….

=======================

어쨌든 저는 이런 생각을 떨칠 수가 없습니다.
만일 이 연구의 결과가 우리의 예상과 상식에 맞게 나왔다면?
그러면 사실 이런 연구를 할 필요가 없죠.
상식에 맞게 나왔으니까 별다른게 없이 인정되는 거죠.
그리고, 그것을 그냥 받아들이겠죠.

만일 이렇게 우리의 상식과 다른 결과가 나왔을 때
이건 우리가 미쳐 고려하지 않은 다른 변수가 있을꺼야.
그리고, 다시 다른 변수를 넣어서 시행하기를 반복합니다.
그리고선 결국
우리의 상식에 맞는 결론이 나오면 연구를 멈춘다면…….
그러면 그건 조작이 아닐까요?
지금 내가 얻은 결과가 과연 믿을 수 있다고 어떻게 확신하죠.
미쳐 고려치 못한 다른 변수가 있다면 말이죠…….

그리고, 다시 생각해 보면,
빅데이터라고 하면 문제가 해결될까요?
그것이 잘못된 원래부터 잘못 측정된 데이터라면
어떻게 할까요?

개가 사람을 물면 기사에 나올까요? 가끔 나겠죠.
사람이 개를 물면 구글에 대번 퍼지고,
페이스북에서 공유될 것입니다

그러면 그것을 분석하는 제 삼자는
이렇게 분석할지도 모릅니다.
사람이 개를 무는 회수는 개가 사람을 무는 회수의 4,8p<0.001”
인종, 지역, 계절, 시간적 변수를 adjust 했음
이렇게 말이죠.
어떻게 생각하시나요?

최소한 100년쯤 지난 뒤 오늘의 인터넷에
나온 글을 분석하는 사람은 그런 결론을 내릴지도 모르죠.

또 지금 신문과 뉴스에서 발표되고, 
바로 다음날 전국민적인 식생활에 
영향을 주는 그런 연구들은
JAMA보다도 훨씬 검증안된
그런 저널에 실린 것도 많은데, 
그건 어떻게 믿을 수 있죠? 

----------------------------
많은 시사점을 주는 글이라고 생각됩니다.
위 논문은 pubmed에서 무료로 전문을 볼 수 있습니다.

2016년 2월 19일 금요일

아빠가 들려 주는 [통계] 짝지은 자료의 분석(1) McNemar test

 
짝지은 자료의 분석은 기본적으로 3가지 통계법을 사용합니다.
Paired t-test 삼총사, McNemar test, Wilcoxon t-test
(알고보면 더 많지만 일단은….)
이른바 “Paired t-test 삼총사입니다. 누가 이렇게 말했느냐?
제가 말했기 때문에 딴데가서 이런 식으로 말하면 안되고,
그냥 느낌으로만 알고 있어야 할 단어입니다.
당연히 Paired t-test 가 포함되고, 더불어 McNemar test Wilcoxon t-test가 있습니다.


 
예를 들어 보죠.
홍길동이 나이가 들어서 관절염이 생겼고, 각각 오른쪽 다리 왼쪽 다리에 다른 치료법을 사용하였습니다.
그래서 그 결과를 이런 식으로 표현하였습니다.
한편 성공하기도 하고, 실패하기도 했는데,
여러 사람에게서 이런 결과를 얻었습니다.
이 둘 중에서 어떤 치료법이 좋은지 알아 보려고 합니다.


 
동일한 결과를 이렇게 길게 세로로 길게 표현할 수도 있습니다.
사람이 아주 많다면, treat_A를 하고 나서 1년쯤 지나서 treat_B를 한다면,
위의 폼처럼 만들려면
다시 홍길동을 찾아야 하지만,
아래 표처럼 그냥 한줄로 기록한 다음 나중에
바꾸는 것이 더 편할 수도 있을 것입니다.
위의 양식을 wide form이라고 하고,
아래 양식을 long form이라고 합니다.
아니, 위의 것이 더 wide 하지 않습니다.
라고 말씀하시는 분도 있겠죠.


 
그런데, 조금 더 확장해서, 치료 방법이 더 누적되어 3, 4..
이런 식으로 결과가 있다면,
그 이름의 의미가 더욱 명확해 집니다.
, wide form은 더 wider 해 지고,
Long form은 더 longer 해 집니다.
일단은 우리는 다시 가장 단순한 구조로 살펴 보겠습니다.


 
그런데 간혹 이런 경우가 있는데,
홍길동의 쌍둥이(형제)가 있어서, 쌍둥이(형제)간에
treat_A 혹은 treat_B 이런 식으로
다른 치료를 하는 연구를 할 수도 있겠지요.
이런 식의 연구는 홍길동의 쌍둥이이기 때문에
많은 조건들이 일치하므로, 짝지어진 자료라고
부릅니다.
많은 조건들이 일치하지만, 똑같지는 않죠.
이런 경우에는 wide form은 좀 표현하기 어렵습니다.
홍길동에게도 나이, 체중, 등등 기록할 것들이 많이 있고,
홍길동2에게도 역시 기록할 것이 많아서,
Long form이 더 적격합니다.
만일 홍길동 쌍둥이가 아니라,
홍길동 형제라면 어떨까요?
형제간 연구도 마찬가지로 long form이 더 입력하기가 편리하고
부부간 연구도 그렇습니다.
그런데 (간단한) 통계를 돌리기에는 wide form이 더 편하고
이해하기도 편합니다.
어쨌든 두 가지 모두 익숙해지면 좋고,
나중에는 상화 변형을 쉽게 할 수 있도록
하는 것이 좋습니다.
 
이제 가장 간단한 형태로 이렇게 자료가 모아 졌다고 합시다.
양 다리의 수술 결과라고 할 수도 있고,
쌍둥이 또는 형제의 결과라고 할 수도 있습니다.
아 그리고, treat 대신에 condition이라고 넣어도 됩니다.


 
제가 만들어 둔 엑셀 파일에 이렇게 넣어 보겠습니다.
(1)의 노란색 칸에 결과를 넣으면, (2)표에 연두색 칸에 그대로 옮겨지고, 그 아래에
오즈비(OR), 위험차(RD) p값이 구해지게 됩니다.
결과적으로 p>0.05이며 유의하지 않은 결과이군요.
보통, (2)와 같은 2x2 table로 표현하는 경우가 많은데,
저는 그것보다는 세로로 된 (1)의 표로 표현하는 것을 권장합니다.
왜냐하면 카이제곱 검정에서 쓰인 2x2와 혼동될 수 있어서 입니다.


참고로 이건 위키피디아에서 나온 McNemar test의 예입니다.
NEJM의 예에서 잘못된 예를 보여줍니다.
, Hodgkin 병과 tonsillectomy의 연관성을 보여주는데,
형제에 대해서 검정한 것입니다.
무엇이 잘못되었냐 하면,
병에 걸린 사람과 걸리지 않은 사람이 독립된 것이 아니라,
형제 간에 연구한 것이기 때문에, 카이제곱 검정을 하면 안되고,
McNemar test해야한다는 것이 주장입니다.
이것은 John Rice라는 분이 쓴 책에 나온 것을
위키피디아에서 인용한 것이고요,
이 예는 McNemar test 강의 때에 다른 사람들도
자주 인용하는 것같습니다.

2016년 2월 17일 수요일

아빠가 들려 주는 [통계] Agreement : Overall, Positive, Negative agreement

 
일치도를 검토하는데 있어서 가장 많이 사용되는 것이
Kappa 입니다.
대부분 통계 프로그램에서 가능하죠.
그리고, 또 많이 사용되는 것이
이것입니다.
그런데, 이것은 통계프로그램에서 해주는 것을
아직 저는 발견하지 못했습니다.
그래서 만들어 보았습니다

 제가 만드는 엑셀 파일이 늘 그럿듯이,
노란 칸에만 숫자를 넣으면 되고, 
빨간 것이 계산되는 것입니다. 
다른 것도 계산되는 것이지만, 
특히 중요한 것을 빨간칸으로 한 것입니다. 
논문에서 본문에 기입할 것은 
녹색으로 해 두었습니다. 

신뢰구간, 기본적으로 95%이지만, 
90%라든지 바꾸고 싶을 때는 숫자를 바꾸시면 되겠습니다.
 공식은 이렇게 나옵니다. 
꼭 모르셔도 됩니다. 
통계하시는 분들께서 연구 열심히 하셔서 만드신 것들이라...
빨간색은 좀 가독성이 좋도록 하기 위해서 
중요 부분만 표시한 것입니다.

아마도 엑셀 2007은 이 공식이 안보일 수도 있습니다. 
엑셀에서 수식이 가능한 것은 2010부터입니다.

중간에는 근거나 되는 글 및 저자들 이름이 있습니다. 
물론 이공식 말고 다른 방법 공식 있습니다. 
통계학자분들께서 열심히 만드시느라 종류가 많습니다.

더 읽고 싶으시다면, 
링크를 열어 보셔서 공부하셔도 좋겠습니다. 
엑셀 파일은 
네이버 블로그에 링크 시켜 두겠습니다. 

http://blog.naver.com/kjhnav/220629967821

구글블로그는 파일 첨부가 안되는군요.

2016년 2월 16일 화요일

아빠가 들려 주는 [통계] Overlapping Method : p값의 대안이 될까?

 p 값의 대안인 듯하면서도, 
사실 아주 단순한 발상에서 시작한 이 방법은
유쾌합니다. 
그리고, 늘 그러하듯 다른 방법을 생각한다는 것은 
늘 해왔던 원래의 방법이 무엇을 의미하는지
다시 일깨워 줍니다.

 이렇게 A,B 두 군에서 각각 200명의 사람에게서 
치료가 된 사람이 112명, 88명이 생겼다면, 
뭔가 두 치료법 사이에 차이가 있지나 않을까?
라는 생각을 하게 됩니다.

 우선 치료율이 44% 음... 56%  역시나 차이가 꽤 있는 듯한데, 
치료율(성공율)의 95%신뢰구간을 구해 보았더니
(빨간 상자 참고)
앗, 신뢰구간이 서로 겹치는 군요. 
음. 그렇다면 차이가 없다는 말!
아깝다...
 보다 전통적인 방법으로 생각해 봅시다.
빨간 상자에서 보여 주는 것은 각각 
RD의 95% 신뢰구간 0을 포함하지 않음-->의미있음
OR과 RR의 95% 신뢰구간 1을 포함하지 않음-->의미있음

피어슨, Yates의 카이제곱과 Fisher exact test의 결과 
(빨간 점선)
p<0.05
의미있는 차이임. 

이렇게 평가하는 것이 보통 하는 평가이죠. 
이때의 귀무가설은 RD=0 또는 RR=1이 됩니다. 
구체적인 과정은 오늘의 주제는 아니고요. 

이렇게 후자의 방법이 보통 해왔던 방법인데, 
전자의 방법은 어떤가요?

이에 대한 연구를 한 분이 있어서 한번 대충 훑어 보죠.
 이런 제목입니다. 


이런 논문에서 이 overlapping 방법이 쓰였다고 하는군요. 
이것에 대해서 선행 연구들이 이렇게 있었군요. 
이것은 하나의 예입니다. 위에서 제가 보여 드린
그 숫자입니다. 구체적인 공식은 여기 나와 있고요, 
저는 인터넷에서 계산해서 보여 드렸습니다. 
공식 보여 드리면 힘드실까봐.
결과 숫자는 같습니다.
type 1 error는 오히려 적습니다. 더 보수적인 결과이죠. 
위의 예제와 같습니다. 
즉, 유의하지 않다고 나올 가능성이 많다는 뜻.
이것은 power.
power도 더 낮습니다.  



결론입니다. 
해석은 여러분께 맡기겠습니다. 

사실 제가 이 방법으로 ICC를 비교한 적이 있습니다. 
두 ICC를 비교하는 것이 통계 프로그램에서 안되길래
(R이나 SAS는 될지도)
보다 보수적인 방법이니까..
차이가 있다고 하는 경우는 쓸 수도 있겠다는 생각이 드는군요. 

그렇지만, 함부로 쓸 생각은 마시고요. 
일반적인 방법이 안될 때만 살짝...