이근백 (2022). 경시적 자료분석 - R 활용. 자유아카데미. - 5장 연속형 경시적 자료분석을 위한 선형혼합모형
12.1 선형 혼합 모형 이론
12.1.1 개요
선형 혼합 모형은 개체마다 반복횟수가 다른 것을 허용한다는 점에서 유용하다.
Laird and Ware(1982)에 의해 처음 제안되었다.
이제 다룰 자료의 형태는 다음과 같다.
ID
반응변수
관측시간
공변량
1
1
12.1.2 모형식: random intercept model
개체 에 대한 관찰 횟수가 번이라고 하자. 공변량 로는 설명되지 않지만 개체 공통의 효과가 있다고 가정하고 싶은 경우, 아래와 같은 확률 모형을 고려할 수 있다.
- 행렬/벡터 표현:
여기서, 아래처럼 가 모수(parameter)가 아닌 확률변수임을 가정할 경우 random intercept model이 된다:
사실 위 모형은 general linear model에서 오차항의 분산-공분산 행렬에 compound symmetry model을 가정하는 것과 동치이다. 왜냐 하면, 에 대해,
12.1.3 모형식: 일반화
위 random intercept model은 아래의 일반적인 선형혼합모형 식에서 , 인 사례에 해당한다:
선형혼합모형의 행렬/벡터 표현:
모형 가정:
- 여기서 과 에 대하여는 , 등의 간단한 가정이 보통 주입되나, 원리적으로는 더 복잡한 공분산 고려도 고려할 수 있다. (가령 에 시간적인 효과를 넣어 AR(1) 등을 고려할 수 있다.) - nlme 라이브러리의 lme 함수 기준으로, 의 모델링은 lme(... random=XXX)에서 지원하고, 의 모델링은 lme(... correlation=XXX)에서 지원한다. 아래 자료분석 예제에서 다시 언급하겠다. - 반응변수 공분산 구조:
12.1.4 모수 , 과 의 추정
과 이 간단한 구조인 경우, 이전 장에서 언급한 최대가능도 방법(maximum likelihood method) 또는 제한된 최대가능도방법 (restricted maximum likelkhood method; REML)을 사용한다.
과 의 구조가 복잡해지면 추가적인 계산적 복잡함이 존재한다. (즉 더 오래 걸린다)
12.1.5 random effect 의 예측값
는 확률변수이지 unknown fixed value가 아니기 때문에, “추정값”이라는 개념이 따로 존재하지는 않는다.
다만 은 unknown fixed value이므로 추정이 가능하고, 이를 의 예측값으로 사용한다. 자세한 식은 생략하나, 대부분의 라이브러리에서 지원한다.
이번 분석에서는 모든 공변량(시간(time)과 처리(trt))를 질적인 범주형 변수로 간주해본다.
모형식:
위 모형의 회귀계수를 설명하기 전에 교호작용의 유의성을 먼저 검정해 보자. ()
아래 스크립트에서 mod11 은 교호작용을 포함한 모형, mod21 는 교호작용이 제거된 축소 모형(nested model)이다. 를 모형에 더하는 방법은 (1|id)이다.
이 두모형의 가능도값을 비교하는 방식으로 에 대한 검정이 가능하다. (“가능도비 검정(likelihood ratio test)”이라 한다.) 가능도비 검정은 anova(mod11,mod21) 함수로 가능하다.
원리상 ML 방법을 이용해 fitting 했을때만 가능도비 검정이 지원되고 REML 방법에 대해서는 지원되지 않는다. anova 함수가 알아서 ML 방법으로 재적합 해준다. (출력 메시지 참고)
출력 화면 우측 아래의 p값 0.02221로부터, 유의수준 5%에서 귀무가설 을 기각할 수 있다. 즉 교호작용이 유의함을 알 수 있다.
library(lme4)
Loading required package: Matrix
mod11 =lmer(log(growth) ~ time + trt + time*trt + (1|id), data=spruce3)#summary(mod11)mod21 =lmer(log(growth) ~ time + trt + (1|id), data=spruce3)#summary(mod21)anova(mod11,mod21)
연구 초기 시점(153일)에는 오존 노출 그릅과 비노출 그룹의 평균 성장 정도 차이(로그 scale)는 -0.01732 이었으며 그 정도는 유의하지 않았다(t-value = -0.506, p=0.614).
각 그룹별 성장 정도를 검토해 보자.
오존 비노출군
timeday174-timeday258 변수들은 trt=0 그릅에 대한 timeday152와 비교하여 얼마나 성장했는 지와 유의성을 보여준다.
timeday174에서는 평균적으로 0.1125 만큼 성장하였으며 그 성장정도는 매우 유의하였다.
timeday201, timeday227, timeday258의 회귀계수도 비슷한 해석이 적용될 수 있다. >> 여기서 해당 계수(0.11255 < 0.2003 < 0.2780 < 0.3172)는 152일과 비교한 평균 성장 증가분을 보여 주는 것이므로, 시간이 경과할수록 큰 값을 가지는 것은 당연한 것이다. 또한 해당 추정값을 이용하여 day152부터 day258의 평균 성장을 추정할 수 있다(아래 표 참조).
오존 노출군
timeday174:trt-timeday258:trt는 비노출 그룹와 비교하여 오존 노출 그룹 그룹 의 시간별 증감 정도를 보여 준다. 예를들어, 기저 시간대 day152에서 비노출 그룹과 노출 그룹의 차이는 trt의 회귀계수 -0.017이다.
fixed effect의 timeday 174:trt는 day174에서 비노출 그릅 (trt=0)에 비교하여 얼마나 더 성장했는지 여부와 그 유의성을 보여 준다. 즉, 오존 노출 그룹 (trt=1) 과 비노출 그룹 (trt=0)의 성장 차이는 로그 scale으로 -0.01454 이었다. 하지만 이 차이는 통계적으로 유의적인지 않았다(p=0.2977).
비슷하게 day201에서도 두 그룹의 성장 차이는 -0.0186 이었고 역시 유의적이지 않았다(p=0.1812).
하지만 day227 과 day258에서의 오존 노출 그룹과 비노출 그룹의 성장 정도는 유의적으로 차이가 남을 알 수 있다(day227 p=0.0305, day258 p=0.0018).
따라서 자료분석을 통해 두 그릅의 성장 정도(growth rate)는 연구 중반 (day 201)까지는 유의한 차이가 없었으나 그 이후에 오존 처리를 받은 나무 그룹이 정상 대기 하에서 자란 나무 그룹보다 성장이 느림을 알 수 있다.
아래 표는 위 모형에서 구한 회귀계수를 이용하여 시간별 그릅별 평균 성장을 계산하였다. 시간이 갈수록 평균간격이 점차적으로 커진다.
오존 비노출 그룹
오존 노출 그룹
day152
day174
day201
day227
day239
(표: 가문비나무의 오존 처리 여부에 따른 시간별 평균 성장도)
12.2.3 Random intercept and random slope (임의 절편 및 임의 기울기) 모형
위 분석에서는 day를 전부 질적 확률변수로 취급하였다. 이 결과 day의 5범주가 4개의 변수로 더미 코딩되어, 최종 분석에서 총 10개의 회귀계수 ()가 적합되었다.
day를 연속형으로 취급한 random effect를 삽입해 보자. 가 임의 절편항, 가 임의 기울기항이다.
아래 스크립트에서 time2가 연속형으로 변환된 관측 시점을 가리킨다. time변수를 문자열로 변환한 뒤 gsub 명령문을 이용해 day를 잘라냈다.
Random effects: 다음의 결과를 보면, 두 확률변수의 상관계수는 corr(b_{i0}, b_{i1})=-0.88$ 으로 음의 값을 가지는데, 이는 랜덤 절편이 큰 나무의 기울기가 랜덤 절편이 작은 나무의 기울기보다 작음을 의미한다. 즉, 초기에 키가 큰 나무의 성장 변화가 초기에 작은 키를 가진 나무의 성장 변화보다 더 작음을 의미한다. 이러한 현상은 성장 곡선(growth curve)과 관련된 자료분석에서 자주 발생된다.
랜덤 기울기를 포함함으로써 고정효과 중 day227:trt의 효과가 유의적이지 않는 것으로 바뀌었다.
12.2.4 Random intercept (임의 절편) 모형에서 오차항의 상관성을 반영하기
지금까지의 분석에서는 error term 가 개체 , 시점 에 대해 모두 독립임을 가정했다. 즉 임을 가정했다. 여기서 개체 측정치 간의 상관성(개체 내 변동의 상관성)을 모형에 더 반영하기 위하여는 아래처럼, correlation=xxx 를 삽입하면 된다.
여기서 적용한 상관구조 외에도 lme 함수에서는 corARMA, corCAR1, corCompSymm, corExp, corGaus, corLin, corRatio, corSpher를 사용할 수 있다 한다. 자세한 설명은 help(lme)를 참고할 수 있다.
아래는 임의 절편에 더하여 에 AR(1) 상관모형 및 무구조(unstructured) 모형을 적용한 결과이다.
AIC 값을 보면 둘 다 mod1보다는 낮다. 즉, 개체 내 변동의 상관성이 반영되는 것이 데이터를 더 잘 설명함을 알 수 있다.