두 집단·대응·비모수 비교
이 토픽을 마치면
두 집단 비교에서 독립 자료와 대응 자료를 구분하고, 분석 단위와 질문에 맞는 비교 구조를 선택할 수 있습니다. 비모수 방법을 “정규성 검정이 실패하면 자동 선택하는 대체품”으로 취급하지 않고, 자료의 순위·짝·교환가능성을 설명할 수 있습니다.
먼저 비교 설계를 읽기
같은 두 그룹의 이름이 있어도 데이터 구조는 다를 수 있습니다. A와 B가 서로 다른 독립 단위에서 나온 것인지, 같은 단위를 전후에 측정한 것인지, 상위 단위 안에 여러 관측이 있는지 구분해야 합니다.
독립 비교에서는 한 관측이 다른 그룹 관측과 짝을 이루지 않습니다. 대응 비교에서는 같은 단위 또는 설계상 연결된 쌍의 차이를 분석합니다. 짝을 무시하면 단위 사이의 공통 변동을 활용하지 못하거나, 반대로 독립 자료를 억지로 짝지을 수 있습니다.
비교 전 데이터 계약
| 질문 | 독립 비교 | 대응 비교 |
|---|---|---|
| 한 행 | 독립 분석 단위의 outcome | 단위·시점별 outcome |
| 연결 키 | 없음 또는 group ID | subject/unit ID |
| 관심 값 | 그룹 간 차이 | 쌍별 차이 |
| 확인할 구조 | 독립성·그룹 정의 | 짝의 완전성·순서 |
분석법을 고르기 전에 이 표를 데이터에 맞춰 채웁니다. stat-002에서 확인한 biological replicate와 technical replicate의 구분도 계속 유지합니다.
비모수라는 말의 범위
비모수 방법은 특정한 분포 모수 형태에 덜 의존하는 비교 절차를 가리킬 수 있지만, 아무 가정도 하지 않는 방법은 아닙니다. 관측의 독립성, 순위의 의미, 짝 구조, 교환가능성 같은 조건이 필요할 수 있습니다.
정규성 검정 하나의 p-value만 보고 방법을 자동 선택하지 않습니다. outcome의 측정 척도, 이상값, 표본 수, 연구 질문, 효과크기 표현을 함께 봅니다. 비모수 방법을 사용해도 결과의 크기와 불확실성을 설명해야 합니다.
Python API를 질문에 맞춰 사용하기
SciPy의 통계 API는 검정과 resampling 계산을 수행하지만, 어느 두 값이 독립적인지나 짝이 올바른지 대신 판단하지 않습니다. 함수에 입력하기 전에 그룹과 pair key를 확인하고, 반환된 통계량과 p-value의 의미를 문서에 맞춰 해석합니다.
from scipy import stats
# 독립 단위에서 나온 두 그룹이라는 설계 확인 후statistic, p_value = stats.mannwhitneyu( group_a, group_b, alternative="two-sided")
# 같은 단위의 전후 측정이라는 설계 확인 후paired_stat, paired_p = stats.wilcoxon(before, after)두 함수의 이름을 기억하는 것보다 입력 벡터가 어떤 단위에서 왔는지 확인하는 것이 먼저입니다. 결과의 p-value만 보고 “차이가 있다”고 쓰지 않고, 비교 방향·효과크기·불확실성과 함께 보고합니다.
대응 자료의 짝을 확인하기
대응 비교에서는 두 값이 같은 단위에서 왔다는 연결 키가 필요합니다. unit_id가 한쪽에만 있거나 한 단위에 여러 전후 값이 있으면, 먼저 짝을 만드는 규칙과 제외되는 단위를 기록합니다. 짝을 맞춘 뒤 남은 행 수가 처음의 측정값 수와 다를 수 있으므로, 분석에 사용된 쌍의 수를 별도로 보고합니다.
독립 비교에서는 같은 키가 우연히 반복되거나 batch가 한 그룹에만 몰리지 않았는지 확인합니다. 그룹 내 행이 많아 보이는 것과 독립적인 단위가 많은 것은 같은 말이 아닙니다. 앞의 replicate 토픽에서 정의한 수준을 그대로 사용합니다.
방법 선택을 보고하는 문장
방법을 선택했다면 “정규성이 나빠서 비모수 검정을 썼다”로 끝내지 않습니다. 다음을 함께 적습니다.
비교 구조: 독립 | 대응
분석 단위: ______
관심 효과: ______
선택한 절차: ______
교환가능성·독립성 점검: ______
해석의 한계: ______이 기록은 API 호출을 연구설계와 연결하며, 같은 함수가 다른 단위에서 사용되는 문제를 줄입니다.
연구 질문으로 돌아가 해석하기
독립 비교는 그룹 간 단위의 차이를, 대응 비교는 같은 단위 안에서의 변화 또는 짝의 차이를 묻습니다. 두 설계의 결과는 같은 “A와 B 비교”라는 문장으로 요약될 수 있어도, 효과의 의미가 다릅니다.
비모수 검정의 p-value도 귀무가설의 확률이나 생물학적 중요성의 척도가 아닙니다. 관측 단위와 비교 절차를 명시하고, 결과를 연구 질문의 범위에서 제한합니다.
비교 결과의 최소 보고 단위
두 집단 비교 결과에는 그룹별 분석 단위 수, outcome의 요약, 효과의 방향과 크기, 불확실성, 선택한 절차와 p-value를 포함합니다. 대응 비교라면 완전한 쌍의 수와 제외된 쌍의 이유를 추가합니다. 비모수 절차를 사용했다는 사실만으로 중앙값 차이가 자동으로 검정됐다고 쓰지 않고, 실제 통계량이 무엇을 비교하는지 확인합니다.
결측이 한 그룹 또는 한 시점에 집중되면 비교 구조 자체가 달라질 수 있습니다. 따라서 분석에 포함된 단위만 보고하지 말고, 처음 계획된 단위와 빠진 단위의 분포를 함께 점검합니다. 이 기록은 결과를 더 그럴듯하게 보이게 만드는 절차가 아니라, 비교가 어떤 자료에 의존하는지 밝히는 절차입니다.
독립성과 대응성의 경계 사례
같은 시료에서 여러 장의 이미지를 얻었다면 이미지별 비교를 독립 비교로 부르기 전에 시료와 이미지의 계층을 기록합니다. 같은 단위의 전후 측정이라면 대응 구조가 있지만, 시간이 길어져 다른 생물학적 단위가 된 경우에는 그 해석이 달라질 수 있습니다. 경계 사례는 함수 선택보다 설계 기록과 전문가 검토가 먼저입니다.
자주 생기는 실패와 점검법
- 전후 자료를 독립 두 집단으로 처리하지 않습니다.
- 독립 자료를 ID가 비슷하다는 이유로 짝짓지 않습니다.
- 정규성 검정 하나로 검정법을 자동 결정하지 않습니다.
- 비모수라는 이유로 독립성 검토를 생략하지 않습니다.
- p-value만 보고 효과크기를 생략하지 않습니다.
핵심 정리
- 독립 비교와 대응 비교는 질문과 데이터 단위가 다릅니다.
- 비모수 방법도 설계·순위·독립성에 관한 가정을 가집니다.
- SciPy API는 계산을 수행하지만 연구설계를 대신하지 않습니다.
- 효과크기·불확실성·p-value를 분리해 보고합니다.
다음 토픽으로
다음 편에서는 여러 집단 비교와 다중비교·FDR을 다룹니다. 비교의 수가 늘어날 때 해석의 기준을 어떻게 관리할지 연결합니다.
참고 자료
- SciPy statistics reference: https://docs.scipy.org/doc/scipy/reference/stats.html
- Bioconductor OSTA experimental design: https://bioconductor.org/books/release/OSTA/pages/bkg-exp-design.html
- ASA p-value statement: https://www.amstat.org/asa/files/pdfs/p-valuestatement.pdf
본 편의 비교 schema와 코드는 BioStatPy가 독립적으로 작성한 교육용 구성입니다.