종단 변화와 결측
이 토픽을 마치면
종단 데이터에서 subject, time, observation을 구분하고 dropout이 시간 구조와 결측 가정에 미치는 영향을 기록할 수 있습니다. 각 시점의 단순 평균 비교와 개인 내 변화 질문을 구분합니다.
반복되는 시간은 독립 표본이 아니다
같은 subject를 여러 시점에 측정하면 한 subject 안의 값들은 서로 연결됩니다. 연구 질문이 평균적인 시점 차이인지, subject별 변화 경로인지에 따라 분석 구조가 달라집니다. 시간 간격, 측정 순서, 중도 탈락을 함께 기록합니다.
종단 schema
subject_id | time | outcome | exposure | observed
S01 | 0 | ... | A | true
S01 | 1 | ... | A | falseobserved=false는 값이 없다는 상태를 표시할 뿐, 결측 원인을 설명하지 않습니다. 마지막 관측 이후 탈락했는지, 측정 실패인지, 연구에서 제외됐는지 기록해야 합니다.
변화와 결측을 함께 보기
결측이 특정 시점이나 조건에 집중되면 관측된 평균 경로가 실제 변화와 다를 수 있습니다. MCAR·MAR·MNAR 이름을 데이터만 보고 확정하지 않고, dropout 과정과 측정 이유를 확인합니다. 분석에 포함된 subject 수와 시점별 관측 수를 별도로 보고합니다.
분석 방향
단순 요약은 시점별 자료의 형태를 탐색하는 데 사용할 수 있습니다. 개인 내 상관과 그룹별 변동을 모델링하려면 mixed model 같은 구조를 검토할 수 있습니다. 어떤 방법을 쓰든 시간의 단위, baseline, 결측 처리와 외삽 범위를 명시합니다.
시간과 dropout을 보고하는 표
시점별로 계획된 subject 수, 실제 관측 수, 새로 탈락한 수를 따로 기록합니다. 단순히 전체 결측 비율만 보고하면 dropout이 어느 시점부터 집중됐는지 알 수 없습니다. 조건별 관측 수가 시간에 따라 달라지는지도 함께 확인합니다.
시간은 방문 번호, 실제 경과 시간, 범주형 시점 중 하나로 표현될 수 있습니다. 같은 time=1이라도 실제 간격이 다르면 변화율의 의미가 달라질 수 있으므로 단위와 기준점을 명시합니다.
연구 질문으로 돌아가 해석하기
종단 결과는 “시점 1의 평균과 시점 2의 평균이 다르다”와 “같은 subject 안에서 변화가 있었다”를 구분해야 합니다. dropout이 있는 자료에서 관측된 subject만의 경로를 전체 모집단의 변화로 확장하지 않습니다.
자주 생기는 실패
- 같은 subject의 시점을 독립 표본으로 세지 않습니다.
- 마지막 관측값을 자동으로 최종 결과로 간주하지 않습니다.
- dropout을 모두 같은 결측 원인으로 묶지 않습니다.
- 결측 가정을 데이터만으로 확정하지 않습니다.
핵심 정리
- 종단 데이터는 subject와 time의 연결 구조를 가집니다.
- dropout은 시간 구조와 결측 가정의 일부입니다.
- 평균 변화와 개인 내 변화는 다른 질문입니다.
다음 토픽으로
다음 모듈에서는 censoring, risk set, Kaplan–Meier로 생존자료를 다룹니다.
참고 자료
- statsmodels API: https://www.statsmodels.org/stable/api.html
- Bioconductor OSTA experimental design: https://bioconductor.org/books/release/OSTA/pages/bkg-exp-design.html
- pandas User Guide: https://pandas.pydata.org/docs/user_guide/index.html
본 편의 종단 schema와 예시는 BioStatPy가 독립적으로 작성했습니다.