반복측정 자료의 분석 고찰 : sas의 proc mixed를...
TRANSCRIPT
반복측정 자료의 분석 고찰 :
SAS의 PROC MIXED를 이용하여
김 호
서울대학교 보건대학원
* 반복측정자료(repeated measures data)
하나의 관측단위로부터 두 번 이상의 측정을 통하여 얻어진 자료
ex 1) 신생아들의 체중을 한 달 간격으로 생후 일년간 측정, 기록
ex 2) 두 처방에서의 결과(예: 체중, 혈압 혹은 심장박동수 등)를 석 달마다 일년간
에 걸쳐 관측 기록
* 두 가지의 중요한 요인
1) 시간 : 환자내 효과 (within-subjects factors)
2) 처리 :환자간 효과 (between-subjects factors)
* 두 가지 관심 사항은
1) 각 처리의 평균값이 시간에 따라 어떻게 변하는지⇒시간의 주효과
2)처리의 효과(처리간의 차이)가 시간에 따라 어떻게 변하는지⇒시간과 처리의 교호작
용
* 공분산구조 :
반복자료 분석이 일반적인 통계분석과 가장 다른 점
- 일반적인 통계 선형모형에서는 각 관측치의 오차항은 독립적이라는 가정이 필수적
- 반복측정 자료분석에서는
+ 각 각의 환자들은 독립적
+ 한 환자 안에서의 측정치, 즉 같은 환자의 다른 시점들에서 관측된 값들의
오차항 사이에는 상관관계가 존재한다고 가정
+ 한 환자 안의 관찰치들 간의 상관관계는 관측 시점의 간격에 따라 다르게
가정되는 것이 보통
+ 반복측정 자료 분석의 주요 목적은 시간에 따른 처리효과의 비교이지만
모형의 구축 단계에서는 이 상관관계 구조의 설정에 가장 많은 노력을 기울임.
상관관계구조의 올바른 선택은 반복측정 자료 분석에서 가장 중요한 과정.
EXAMPLE : BP Data
Treatment of Mild Hypertension Trial (TOMHS) by Neaton, et. al. (1993)
경미한 고혈압 환자의 치료를 위한 확률화(randomized), 양쪽-맹검법
(double-blind), 비교-처치군(placebo-controlled)을 이용한 임상
연구의 주목 : 비교군에 비하여 처치군에서 약효를 확인할 수 있는가 하는 것이다.
<그림 2> 반복자료 분석의 시작 (그림 그리기)
* 결측치에 대한 문제
-연구 초기에는 대부분의 환자에게서 자료,
-연구가 진행될수록 제외(lost to follow-up or droop-out)되는 환자가 증가
-BP 데이터 3번의 follow-up 중 하나 이상에서 결측치 있는 환자는 13%.
PROC GLM PROC MIXED
id,y1,y2,y3,x1,x2,
x3
id,y1,x1,x2,x3
id,y2,x1,x2,x3
id,y3,x1,x2,x3
1,10,12,13,1,2,3
2,11,13, . ,2,1,4
1,10,1,2,3
1,12,1,2,3
1,13,1,2,3
2,11,2,1,4
2,13,2,1,4
2, . ,2,1,4<표2> PROC GLM과 PROC MIXED에서의
입력자료의 비교
데이터를 분석의 기본 목적 :
-다른 모든 설명변수의 효과를 제어한 후의 SBP에 대한 TRT의 효과의 유의성을
보는 것
-동시에 같은 환자들의 관측치가 가지는 가능한 상관관계를 제어
SBP 값들은 다변량 정규분포를 따른다는 가정
-평균은 설명변수들의 선형모형으로 표현
-비교적 간단한 구조의 분산-공분산
* 분산-공분산행렬 (variance-covariance matrix)
-단변량 경우 Var(ε)=σ2
-다변량 (삼변량) 경우
Var( ε)=Varꀌ
ꀘ
︳︳︳︳
ε1ε2ε 3
ꀍ
ꀙ
︳︳︳︳=ꀌ
ꀘ
︳︳︳︳
var(ε 1) cov(ε 1,ε2) cov(ε 1,ε3)cov(ε 2,ε1) var(ε 2) cov(ε 2,ε3)cov(ε 3,ε1) cov(ε 3,ε2) var(ε 3)
ꀍ
ꀙ
︳︳︳︳=ꀌ
ꀘ
︳︳︳︳
σ11 σ 12 σ 13σ 21 σ 22 σ 23σ 31 σ 32 σ 33
ꀍ
ꀙ
︳︳︳︳
-혼합대칭(compound symmetry) 공분산 모형
Var( ε)=Varꀌ
ꀘ
︳︳︳︳
ε1ε 2ε 3
ꀍ
ꀙ
︳︳︳︳=
ꀌ
ꀘ
︳︳︳︳︳︳
σ1+σ2σ1 σ 1
σ 1 σ 1+σ2σ1
σ 1 σ 1 σ 1+σ2
ꀍ
ꀙ
︳︳︳︳︳︳
-일반선형모형 (독립인 오차항)
Var( ε)=Varꀌ
ꀘ
︳︳︳︳
ε1ε2ε3
ꀍ
ꀙ
︳︳︳︳=ꀌ
ꀘ
︳︳︳︳
σ2 0 00 σ2 00 0 σ2
ꀍ
ꀙ
︳︳︳︳
* 고정효과(fixed effect)와 임의효과 (random effect)
1) 고정효과
-전통적인 선형모형에서 고려하는 효과
-하나의 고정된 값 (모수)이고 우리는 적절한 통계적 방법을 통하여 이들을 추정
-연구자가 관심이 있는 효과의 수준이 일정하고 모든 수준에서 자료를 수집했다면
2) 임의효과
-고정된 값이 아니고 분포를 가진 효과로서
-전체 분포에서 하나의 실현된 경우를 데이터를 통하여 관측
-효과의 분산을 추정
-효과의 수준이 다양하고 자료에서 관측하는 효과들은 전체 효과의 일부분으로 가정
고정효과의 예) 특정 처방에 대한 효과
- 그 증상에 대한 처방이 다양하게 존재하지 않고
- 연구자가 수집한 방법에만 관심이 있다면 (예를 들어 두 가지 방법을 비교한다고
할 때 이 두 가지 처방이 여러 가지 가능한 처방 방법에서의 일부 샘플이라고
생각하지 않고 연구자가 이 두 가지 처방의 비교에만 관심이 있고 연구의
결과를 이 두 가지 처방에 대한 비교로만 국한 시켜도 무방)
임의효과의 예) 환자의 효과 :
-다양하게 존재하고
-연구자가 모든 환자들의 효과를 수집할 수도 없고
-자료에서의 환자효과는 전체 연구집단에서의 임의 추출(random sampling)된
것이라고 가정해도 무방
* 두 가지 분석 방법
1)최초 관측치(baseline observation)를 설명변수로 하고 나머지 관측치들 종속변수
2)최초관측치와 각 시점에서의 관측치의 차이를 종속변수로
결국 동등한 모형으로
해석하고자 하는 방향에 따라 선택할
여기에서는 전자의 방법을 사용
SBP의 최초방문 시에 비한 SBP의 증가분이 아닌 최초방문 SBP 값으로 보정한 후의
각각 방문 시점에서의 SBP 값에 관심이 있게된다.
<모형 1> 일반 선형 모형 (General Linear Model)
서로 독립이고 동일한 분포를 가지는(iid) 오차항 가정
proc mixed data=bp;
class trt visit complier clinic stratum;
model sbp = sbpbl trt
visit trt*visit
complier trt*complier
clinic trt*clinic
stratum trt*stratum;
run;
PROC MIXED는 혼합효과 모형을 실행하게 하고 DATA=BP는 사용할 데이터의 이름을 나
타낸다. CLASS문에서는 비연속 변수를 설정해 주고 MODEL문에서 고려되는 설명변수
들을 설정해주고 있다. # cov parameter = 1
<모형 2> 혼합대칭 공분산 (Compound Symmetry) 모형
proc mixed data=bp;
class trt visit complier clinic stratum person;
model sbp = sbpbl trt
visit trt*visit
complier trt*complier
clinic trt*clinic
stratum trt*stratum;
repeated visit / type=cs sub=person;
run;
TYPE=CS 대각선은 공통의 값을 가지고 비대각의 값은 또 다른 값을 가지는 형태,
반복자료분석의 가장 간단한 형태, # parameter = 2
<모형 2>와 동등한 임의 절편모형
proc mixed data=bp;
class trt visit complier clinic stratum person;
model sbp = sbpbl trt
visit trt*visit
complier trt*complier
clinic trt*clinic
stratum trt*stratum;
random intercept /
sub=person;
run;
# parameter = 2 시간
SBP
<모형 3> 임의계수(Random Coefficients ) 모형
proc mixed data=bp;
class trt visit complier clinic stratum person;
model sbp = sbpbl trt
visit trt*visit
complier trt*complier
clinic trt*clinic
stratum trt*stratum /
ddfm=bw;
random int visitlin /
type=un sub=person;
run;
# parameter = 4
SBP
<모형 4> 비구조화(Unstructured) 분산 모형
proc mixed data=bp;
class trt visit complier clinic stratum person;
model sbp = sbpbl trt
visit trt*visit
complier trt*complier
clinic trt*clinic
stratum trt*stratum;
repeated visit / type=un sub=person r rcorr;
run;
# parameter = 6 (분산 3 개, 공분산 3 개)
<모형 5> 이질성 (heterogeneous) 일반 선형 모형
두 군간에 분산이 다른 것을 모형화
proc mixed data=bp;
class trt visit complier clinic stratum;
model sbp = sbpbl trt
visit trt*visit
complier trt*complier
clinic trt*clinic
stratum trt*stratum;
repeated / sub=person group=trt;
run;
# parameter = 2
<모형 6> 이질성 혼합대칭 모형
proc mixed data=bp;
class trt visit complier clinic stratum person;
model sbp = sbpbl trt
visit trt*visit
complier trt*complier
clinic trt*clinic
stratum trt*stratum;
repeated visit / type=cs sub=person group=trt;
run;
# parameters = 4 , 비교군에서 2 개, 처리군에서 2 개,
<모형 7> 이질성 임의계수 모형
proc mixed data=bp;
class trt visit complier clinic stratum person;
model sbp = sbpbl trt
visit trt*visit
complier trt*complier
clinic trt*clinic
stratum trt*stratum / ddfm=bw;
random int visitlin / type=un sub=person group=trt;
repeated / sub=person group=trt;
run;
# parameters = 8 각각의 처치군에서 4 개씩 8 개
<모형 8> 이질성 비구조화 분산 모형
proc mixed data=bp;
class trt visit complier clinic stratum person;
model sbp = sbpbl trt
visit trt*visit
complier trt*complier
clinic trt*clinic
stratum trt*stratum;
repeated visit / type=un sub=person group=trt;
run;
# parameters = 12 각각의 처치군에서 6 개씩 12 개
<표 3>BP 데이터를 분석하기 위한 모형들
번호 모형
분산-공분산
행렬의 모수 개수BIC
1 일반 선형화 1 -4033.52 혼합대칭 2 -3957.63 임의 계수 4 -3962.24 비구조화 6 -3968.2
5이질성
일반 선형화2 -4027.1
6이질성
혼합대칭4 -3957.1
7이질성
임의계수8 -3968.3
8이질성
비구조화 12 -3980.5
모형을 적합시킨 후에는 잔차 검사한다. (잔차분석)
proc mixed data=bp;
class trt visit complier clinic stratum person;
model sbp = sbpbl trt
visit trt*visit
complier trt*complier
clinic trt*clinic
stratum trt*stratum / p;
repeated visit / type=cs sub=person group=trt;
make 'predicted' out=p noprint;
id trt visit clinic person;
run;
Covariance Parameter Estimates
Cov Parm Subject Group Estimate
Variance person trt 1 69.0629 = σ2̂
CS person trt 1 34.9670 = σ 1̂
Variance person trt 2 87.2927 = σ2̂
CS person trt 2 71.7782 = σ 1̂
Fitting Information
Res Log Likelihood -3943.3
Akaike's Information Criterion -3947.3
Schwarz's Bayesian Criterion -3955.0
Type 3 Tests of Fixed Effects
Num Den
Effect DF DF F Value Pr > F
sbpbl 1 345 194.84 <.0001
trt 1 345 21.38 <.0001
visit 2 682 4.90 0.0077
trt*visit 2 682 0.45 0.6393
complier 1 345 0.47 0.4914
trt*complier 1 345 0.05 0.8263
clinic 3 345 6.25 0.0004
trt*clinic 3 345 3.76 0.0112
stratum 1 345 0.06 0.8021
trt*stratum 1 345 1.86 0.1736
proc mixed data=bp;
class trt visit complier clinic stratum person;
model sbp = sbpbl trt visit clinic trt*clinic/s;
repeated visit / type=cs sub=person group=trt;
lsmeans trt*clinic / cl;
run;
Least Squares Means
Standard
Effect trt clinic Estimate Error DF t Value Pr>|t|
trt*clinic 1 A 121.30 1.4817 349 81.87 <.0001
trt*clinic 1 B 123.21 1.3044 349 94.46 <.0001
trt*clinic 1 C 122.46 1.1529 349 106.21 <.0001
trt*clinic 1 D 122.38 1.6317 349 75.00 <.0001
trt*clinic 2 A 126.79 1.4116 349 89.82 <.0001
trt*clinic 2 B 136.02 1.2604 349 107.92 <.0001
trt*clinic 2 C 129.45 1.1777 349 109.92 <.0001
trt*clinic 2 D 127.90 1.5799 349 80.95 <.0001
* TRT효과 (CLINIC과의 교호작용에 유의)
CLINIC=A에서는 126.79-121.30=5.49,
B에서는 136.02-123.21=12.81,
C에서는 129.45-122.46=6.99,
D에서는 127.90-122.38=5.52
lsmeans trt / diff cl e;
lsmeans trt / at sbpbl=170 cl;
Least Squares Means
Standard
Eff trt sbpbl Est Error DF t Value P> |t|
trt 1 . 122.34 0.7051 349 173.51 <.0001
trt 2 . 130.04 0.6834 349 190.29 <.0001
trt 1 170 138.64 1.4373 349 96.46 <.0001
trt 1 170 146.35 1.3221 349 110.69 <.0001
Differences of Least Squares Means
Standard
Eff trt _trt sbpbl Est Error DF t Val
trt 1 2 . -7.7021 0.9848 349 -7.82
Summary
* 반복측정 자료 분석은 한 개체 안에서 반복적으로 측정된 자료간에는 상관이
있다는 사실에 부합하는 분석 방법이다.
* 독립성을 가정한 일반 선형모형(일반 회귀분석이나 분산분석)을 사용하는 것은
가정에 어긋나는 모형을 사용하는 것이다.
* 연구의 목적이 상관관계의 분석이 아닌 약효의 차이에 대한 것이라도 반복자료
분석 기법을 이용해야만 상관성을 보정한 후의 효과를 얻을 수 있다.
* 올바른 약효를 추정하기 위해서는 올바른 공분산 구조를 선택해야한다.
* 올바른 약효를 추정하기 위해서는 교호작용의 선택 등 변수 선택에 유의해야한다.
Downloadable from http://plaza.snu.ac.kr/~hokim
열린강의실 > 세미나자료 > 반복측정자료분석
과제 : Proc Mixed Example (bpmix.sas)를 다운받아서 실행하고 그 결과를 정리하여
서 제출하시오. (프로그램 자체에 대한 설명과 그 의미에 대한 설명을 시도하시오.)