Biostatistics 통계 분석 Flow-(a)

Hoya Jaeho Lee·2022년 2월 20일
1

Biostatistics

목록 보기
2/20

의학 통계에서 필요한 전체적 연구 통계 분석 flow를 정리해보겠습니다.
통계 분석에 활용할 수 있는 R코드도 조금이나마 간단하게 설명했습니다.

동질 집단 사이의 비교

두 개 또는 그 이상의 집단을 무작위로 나눠서 집단이 동질하게 가정을 한 후에 주요 결과 변수에 관해 알아보는 방법입니다.

-T-test (Independent student's)
EX) 동질한 두 집단에서 치료법의 방법에 따라 혈압의 차이가 존재하는 지 확인
결과 값이 되는 종속변수는 반드시 연속 변수
EX) R 코드에서 t-test 코드: t.test(score~group,var.equal=TRUE) ##등분산성 가정

-Man Whitney U test (Wilcoxon rank sum test)
결과 변수가 서열변수거나 연속형 변수여도 정규성 가정을 충족하지 않는 경우에 활용하는 비모수 검정
대표 값은 mean 대신에 median으로 연구에 제시 필요성
EX) R 코드에서 wilcoxon rank sum test 코드: wilcox.test(score~group,exact=FALSE)

-카이 제곱 검정
EX) 예방법에 따라 질병 발생이 달라지는 지 확인
결과 변수가 서열변수나 연속형 변수가 아닌 명목형 변수일 때 사용
단, 기대 빈도가 5 미만인 셀이 20% 이상인 경우는 피어슨 카이제곱 대신에 Fisher's exact Test 사용
EX) R 코드에서 Chisq 코드:
table=xtabs(~obesity+diabetes)
chisq.test(table)$expected
##기대 빈도 출력 후에 chisqtest 혹은 Fishertest 시행
chisq.test(table)
fisher.test(table)

Cochran-Armitage test 활용을 해야하는 경우:
비율이 증가 혹은 감소하는 trend(경향성)을 확인하는 경우엔 사용하는 카이제곱 경향 분석

-ANOVA (Analysis of Variance)
3군이상에 대한 검정이라는 점에서 t-test와는 다름
EX) 동질의 세 집단에 대한 세가지 다른 치료법에 따라서 치료의 효과가 있는지 검정하는 경우
t-test와 마찬가지로 결과 값이 되는 종속변수는 반드시 연속 변수
EX) R 코드에서 aov 코드:
summary(aov(score~factor(group)))
TukeyHSD(aov(score~factor(group))) ##사후 검정

-Kruscal-Walis H test (Anova 조건+ 비모수 일때)
3군이상에 대한 검정+ Man Whitney U test와 마찬가지로 결과 변수가 서열변수거나 연속형 변수여도 정규성 가정을 충족하지 않는 경우에 활용하는 비모수 검정
EX) R 코드에서 kruskal 코드:
kruskal.test(score~group)
kruskalmc(score,group) ##사후 검정

EX) 서열 변수일 경우
R 코드에서 Jonckheere-Terpstra test 코드:
jonckheere.test(score,group)

-ANCOVA (Analysis of Covariance)
교란 변수(Confounding variables)들을 통제 해주는 ANOVA, 즉 교란변수의 효과를 없애 주는 ANOVA 분석 방법 (교란 변수 adjust 해줌)

  • ANOVA 계열은 사후 검정(post-hoc), 다중 비교(multiple-comparisons)등을 시행해서 군간의 비교 추가적으로 시행
    EX) Tukey, Dunnett, Duncan, Fisher's LSD, Bonferroni (다소 엄격하고 보수적인 방법, 4군간의 비교 경우 사후검정 6번 test를 시행해야해서 p-value=0.05/6으로 시행 해야 함 ^^;)
    EX) R 코드에서 post-hoc 검증 코드: TukeyHSD(aov(score~factor(group)))

ANOVA, T-test
모두 1) 정규성 2) 등분산성 3) 독립성을 가정함

-정규성 가정은 일반적으로 표본 수가 30 이상이면 Central Limit Theorem(중심극한정리)에 의해 정규성을 가정할 수 있고, 만약 30이하면 Shapiro-Wilk test나 Kolmogorov-Smironv test로 정규성을 증명할 수 있음
EX) R 코드에서 정규성 검증 코드: shapiro.test(score[group==1])
귀무가설: 자료는 정규분표를 따른다 VS 대립가설: 정규분포를 따르지 않는다
=> p-value>0.05 일때, 정규성을 만족함

-만약, 등분산 조건이 만족 하지 않을 때 쓰이는 검정 방법: Welch't-test, Welch's Anova

-등분산을 검증하는 test: Levene test, Bartlett Test, F-test 등이 존재
귀무가설: 두 군의 분산은 일정하다 VS 대립가설: 분산이 같지 않고 다르다
=> p-value>0.05 일때, 등분산성을 만족함
EX) R 코드에서 등분산성 확인 코드: var.test(score~group)

References
한눈에 쏙쏙 의학통계 배우기 3판 by 김용은 , 김지형
그림으로 이해하는 닥터배의 술술 보건의학통계 by 배정민

profile
Biostatistics researcher Github: https://github.com/hoyajhl

0개의 댓글