지식나눔

통계 프로그램에서 다중 지표로 특이성, 민감도 구하기

안녕하세요. 특정 암을 선별하기 위한 생체표지자 마커의 유용성을 평가하기 위한 방법으로 실험을 진행하고 있는데, 3가지 생체표지자에 대해서 정상군과 환자군에 대해 각각 측정값을 얻었습니다. 그런데, 유사 논문에 보니, SPSS 같은 통계 프로그램으로 3가지 또는 4가지 표지자 마커의 조합을 ROC-AUC 분석을 수행한 후에, sensitivity와 specificity를 얻었다고 하는데, 통계에 거의 지식이 없어서 전문가 분들의 조언을 얻고자 합니다. 제가 실험에서 표적으로 한 생체표지자는 A, B, C 세가지 이고, 정상군(n=10), 환자군(n=10)에 대해서 A 지표양을 측정하였습니다. B지표와 C 지표도 같은 방법으로 아래와 같이 체내 양을 측정한 결과를 얻었습니다. 예를 들어서, A B C 정상 환자 정상 환자 정상 환자 0.1 6.5 11.5 25.5 54.3 101.5 0.3 5.5 12.6 30.2 48.6 98.6 0.5 5.6 14.6 28.6 48.3 68.7 0.3 4.9 15.2 31.5 60.3 88.6 0.2 6.1 12.3 41.2 51.8 87.1 0.5 5.9 14.0 47.5 54.3 68.7 0.1 5.6 12.3 45.2 57.5 87.6 0.5 4.8 11.0 50.2 48.9 68.4 0.3 4.6 11.5 28.6 64.2 79.1 0.2 6.0 10.9 31.0 47.6 80.5 제가 알고 있기론 지시변수를 정상군을 0으로, 환자군을 1로 코딩하라고 하여, 이항로지스틱회귀분석을 실행하면 된다고 하는데, 전체적으로 통계프로그램에서 어떻게 접근해야되는지 몰라서 질문을 드립니다. 그리고 꼭 SPSS가 아니더라도 상기목적으로 freeware로 쓸 수 있는 통계 프로그램도 추천해 주시면 감사하겠습니다. 그럼 전문가분들의 답변 기다리겠습니다. 감사합니다.
  • 생체표지자
  • 의학 통계
지식의 출발은 질문, 모든 지식의 완성은 답변! 
각 분야 한인연구자와 현업 전문가분들의 답변을 기다립니다.
답변 2
  • 답변

    이민우님의 답변

    저도 전문 지식이 있는 것은 아닙니다. 다만 여기저기 검색해서 나오는 정보나 간단히 SPSS 메뉴 어디어디 클릭하라고 말씀드릴 수도 있습니다만... 통계라는 것은 잘 알고 적용해야지 잘 알지 못하면서 섣불리 적용하고 해석하는 것은 매우 위험한 일이라고 생각합니다. 더욱이나 적용하고자 하시는 통계기법은 그렇게 만만히 볼 통계기법이 아닙니다. (정식으로 추천드리는 방법은 통계 전문가를 통해 해결하시는 방법이지만 사실 현실성이 없는 이야기겠죠.) 1. 유료/무료 통계프로그램 : 일반적인 유료 통계패키지(SAS,SPSS,MINITAB 등)를 구하실 수 있으신지요. 해당 프로그램들의 가격은 수백~수천 만원에 달합니다. 정식 버전이 아닌 프로그램이라도 구해서 하신다면 모르지만... 무료로 사용하실 수 있는 공개 통계소프트웨어로는 'R' 이라는 프로그램이 있습니다. 하지만 'R' 이라는 프로그램은 아직 국내에 널리 쓰이고 있지는 않은 상황이라 해당 프로그램의 메뉴얼도 많지 않기에 이 또한 현실적인 답은 아닌 것 같습니다. * 질문하신 분의 상황을 모르지만 일반적인 연구기관에서 연구하신다는 가정하에 통계 패키지를 보유하고 계신 주변분들을 통해 해당 문제를 해결하시는 것이 가장 현실적인 답이 될 것입니다. 2. 해당 연구 결과에 대해 이항로지스틱회귀분석 적용 (우선 예시로 든 자료들은 말씀하신 실험 디자인과 맞지 않는 것 같기에 제 임의로 추측해서 말씀드리겠습니다.) '이항로지스틱회귀분석' 이라는 것은 - 이항 : 종속변수 결과가 'yes' 와 'no'의 2개 항으로 되어 있는(3개이상이면 다항) - 로지스틱 : 종속변수(여기서는 정상/환자 구분)가 발생할 확률을 - 회귀분석 : 종속변수(실험 결과값)를 설명하는 독립변수 (여기서는 A,B,C 지표)의 회귀방정식 ( Y = x*A + y*B + z*C + 상수 와 같은...)을 구하는 것 입니다. SPSS나 기타 통계 프로그램에서 이항로지스틱을 실행하는 법은 지면상 설명드리기 힘들고, 구글같은 곳에서 'SPSS 이항로지스틱' 과 같은 검색어로 검색하시면 많은 메뉴얼을 구하실 수 있습니다. 3. 이항로지스틱을 적용하는 방법과 결과 예시 이항로지스틱을 적용하기 위해서는 정상/환자를 각각 0/1 (혹은 1/0)으로 코딩하고 A,B,C 각 지표들의 측정값을 그대로 코딩하면 됩니다. 즉, 정상여부 A값 B값 C값 0 0.1 6.5 11.5 1 0.3 5.5 12.6 0 0.5 5.6 14.6 . . . 1 0.2 6.0 10.9 와 같이 코딩해서 이항로지스틱을 실행하시면 결정계수, 유의확률, 설명도, 회귀계수( A, B, C 앞에 오는 상수항) 등을 구해줍니다. 여기서 결과값을 회귀식에 대입하면 정상여부에 대한 0~1 사이의 값이 도출되고 0.3이 나왔다면 0에 가깝기 때문에 정상인 케이스 0.8이 나왔다면 1에 가깝기 때문에 환자인 케이스로 분류할 수 있게 되는 겁니다. 하지만 회귀식이 나왔다고 끝나는 것이 아니라 회귀식을 도출하기 이전에 A,B,C 지표 각각과 환자/정상간에 관계가 있는 지표인지 등에 대한 심도있는 고찰이 선행되어야 합니다. 4. ROC-AUC 관련 - 또한 너무 길어지기에 아래 링크 참고해 보세요. http://adnoctum.tistory.com/121#footnote_121_1 ( 많이들 통계에 대한 이해 없이 메뉴얼에 따라 통계처리하고 결과를 해석, 발표하곤 하는데 개인적으로는 매우 위험한 현상 같습니다. 관련 전문가나 경험이 많으신 분들의 도움을 받으시길 권해드립니다. )
    저도 전문 지식이 있는 것은 아닙니다. 다만 여기저기 검색해서 나오는 정보나 간단히 SPSS 메뉴 어디어디 클릭하라고 말씀드릴 수도 있습니다만... 통계라는 것은 잘 알고 적용해야지 잘 알지 못하면서 섣불리 적용하고 해석하는 것은 매우 위험한 일이라고 생각합니다. 더욱이나 적용하고자 하시는 통계기법은 그렇게 만만히 볼 통계기법이 아닙니다. (정식으로 추천드리는 방법은 통계 전문가를 통해 해결하시는 방법이지만 사실 현실성이 없는 이야기겠죠.) 1. 유료/무료 통계프로그램 : 일반적인 유료 통계패키지(SAS,SPSS,MINITAB 등)를 구하실 수 있으신지요. 해당 프로그램들의 가격은 수백~수천 만원에 달합니다. 정식 버전이 아닌 프로그램이라도 구해서 하신다면 모르지만... 무료로 사용하실 수 있는 공개 통계소프트웨어로는 'R' 이라는 프로그램이 있습니다. 하지만 'R' 이라는 프로그램은 아직 국내에 널리 쓰이고 있지는 않은 상황이라 해당 프로그램의 메뉴얼도 많지 않기에 이 또한 현실적인 답은 아닌 것 같습니다. * 질문하신 분의 상황을 모르지만 일반적인 연구기관에서 연구하신다는 가정하에 통계 패키지를 보유하고 계신 주변분들을 통해 해당 문제를 해결하시는 것이 가장 현실적인 답이 될 것입니다. 2. 해당 연구 결과에 대해 이항로지스틱회귀분석 적용 (우선 예시로 든 자료들은 말씀하신 실험 디자인과 맞지 않는 것 같기에 제 임의로 추측해서 말씀드리겠습니다.) '이항로지스틱회귀분석' 이라는 것은 - 이항 : 종속변수 결과가 'yes' 와 'no'의 2개 항으로 되어 있는(3개이상이면 다항) - 로지스틱 : 종속변수(여기서는 정상/환자 구분)가 발생할 확률을 - 회귀분석 : 종속변수(실험 결과값)를 설명하는 독립변수 (여기서는 A,B,C 지표)의 회귀방정식 ( Y = x*A + y*B + z*C + 상수 와 같은...)을 구하는 것 입니다. SPSS나 기타 통계 프로그램에서 이항로지스틱을 실행하는 법은 지면상 설명드리기 힘들고, 구글같은 곳에서 'SPSS 이항로지스틱' 과 같은 검색어로 검색하시면 많은 메뉴얼을 구하실 수 있습니다. 3. 이항로지스틱을 적용하는 방법과 결과 예시 이항로지스틱을 적용하기 위해서는 정상/환자를 각각 0/1 (혹은 1/0)으로 코딩하고 A,B,C 각 지표들의 측정값을 그대로 코딩하면 됩니다. 즉, 정상여부 A값 B값 C값 0 0.1 6.5 11.5 1 0.3 5.5 12.6 0 0.5 5.6 14.6 . . . 1 0.2 6.0 10.9 와 같이 코딩해서 이항로지스틱을 실행하시면 결정계수, 유의확률, 설명도, 회귀계수( A, B, C 앞에 오는 상수항) 등을 구해줍니다. 여기서 결과값을 회귀식에 대입하면 정상여부에 대한 0~1 사이의 값이 도출되고 0.3이 나왔다면 0에 가깝기 때문에 정상인 케이스 0.8이 나왔다면 1에 가깝기 때문에 환자인 케이스로 분류할 수 있게 되는 겁니다. 하지만 회귀식이 나왔다고 끝나는 것이 아니라 회귀식을 도출하기 이전에 A,B,C 지표 각각과 환자/정상간에 관계가 있는 지표인지 등에 대한 심도있는 고찰이 선행되어야 합니다. 4. ROC-AUC 관련 - 또한 너무 길어지기에 아래 링크 참고해 보세요. http://adnoctum.tistory.com/121#footnote_121_1 ( 많이들 통계에 대한 이해 없이 메뉴얼에 따라 통계처리하고 결과를 해석, 발표하곤 하는데 개인적으로는 매우 위험한 현상 같습니다. 관련 전문가나 경험이 많으신 분들의 도움을 받으시길 권해드립니다. )
    등록된 댓글이 없습니다.
  • 답변

    박정훤님의 답변

    MINITAB 은 네이버에 치시면 나오고 메뉴얼도 쉽게 구할 수 있을 것같구요. 한글화 되있어서 무리 없이 쓰실 수 있을 것 같은데 데모로 사용하실 수 있습니다. 대신 날짜 제한이 있어서 한번 쓰시는거 아니면 효용이 없을 수도 있겠지만요.
    MINITAB 은 네이버에 치시면 나오고 메뉴얼도 쉽게 구할 수 있을 것같구요. 한글화 되있어서 무리 없이 쓰실 수 있을 것 같은데 데모로 사용하실 수 있습니다. 대신 날짜 제한이 있어서 한번 쓰시는거 아니면 효용이 없을 수도 있겠지만요.
    등록된 댓글이 없습니다.