22 장정규성검정과정규화변환 22.1 시각적방법 22.1.1 Q-Q 플롯과정규확률그림 Q-Q 플롯( 분위수- 분위수플롯, Quantile-Quantile plot) 은하나의자료셋이특정분포( 정규분 포나와이블분포등) 를따르는지또는두개의자료셋이같은모집단분포로부터나왔는지를 판단하는시각적분석방법이다. Q-Q 플롯은자료의분위수와특정( 이론적) 분포의분위수를구하여산점도로나타내거나, 두 개의자료셋으로부터각각분위수를구하여산점도로나타낸그림이다. 따라서 Q-Q 플롯에서 점들이 45 도기울기의직선상에놓이면, 자료가해당분포를잘따르거나두모집단분포가 같다고해석할수있다. Q-Q 플롯의특별한경우로정규 Q-Q 플롯(normal Q-Q plot) 또는정규확률그림(normal probability plot) 은데이터가정규분포를따르는지에대한그림으로, R에서는다음의함수를 이용한다. qqnorm(y,...) # 한개의자료셋 qqline(y,...) qqplot(x, y,...) # 두개의자료셋 > ## qqnorm() 함수적용예: 난수이용 > y <- rt(200, df=5) > par(mfrow=c(1,2)) > qqnorm(y); qqline(y, col=2) > qqplot(y, rt(300, df=5))
22.1.2 작성원리 (a) Q-Q 플롯의작성원리 개의자료가균일분포 을따른다면, 크기순으로배열된자료 ( ) 가다음의 개구간 에순서대로한개씩포함되는것이이상적일것이다. 즉, 자료가균일분포를따른다면자료 는 번째구간의중간값(middle points) 인 을가질것으로기대할수있다. Q-Q 플롯은자료의분위수( 자료값에해당) 를 로, 이론적분 포로부터의기댓값을 로하는 을산점도로나타낸것이다. 직선 상에점들이놓이게되면, 균일분포를잘따른다고 할수있다. 자료가균일분포를따르는지에대한 Q-Q 플롯은경험분포함수와매우유사하다. 경험분포함 수는 를계단함수의형태로나타낸것으로, Q-Q 플롯과는두축이바뀐차이가있 다. 아래의그림은균일분포로부터추출된난수 5개의자료에대한이론적분포함수와경험적분포 함수를나타낸다. 또한자료에대한이론적분위수를구하는그림을나타낸다.
(a) (b) (c) [그림 22.1] 균일분포의 난수 5개에 대한 (a)이론적 분포함수, (b)경험적 분포함수, (c) 5개 점 에 대한 기댓값 [그림 22.2] 균일분포로 부터의 난수 5개에 대한 Q-Q 플롯(왼쪽 그림)과 난수 100개에 대한 Q-Q 플롯(오른쪽 그림) (b) 정규확률그림의 작성원리 만약 주어진 자료( )가 모수( )가 미지인 정규분포를 따르는지는 다음의 두 방법 을 사용한다. ⅰ) 의 표준화된 자료 를 이용하여 를 산점도로 나타내고, 직선 를 기준선(reference line)으로 사용하거나 ⅱ) 원자료 를 이용하여 를 산점도로 나타내고, 직선
를 기준선으로 시용한다. 여기서, 과 는 와 에 대한 추정값이다. 아래의 그림은 표준정규분포로부터 추출된 난수 5개의 자료에 대한 이론적 분포함수와 경험적 분위수 산출 과정을 보여준다. (a) (b) (c) [그림 22.3] 표준정규분포의 난수 5개에 대한 (a)이론적 분포함수, (b)경험적 분포함수, (c) 5 개점에 대한 기댓값 [그림 22.4] 표준정규분포로 부터의 난수 5개, 100개, 1000개에 대한 Q-Q 플롯
22.2 사피로-윌크검정 사피로- 윌크(Shapiro-Wilk) 검정은자료가정규분포로부터나왔는지에대한강력한검정이다 ( 특히소표본의경우). 자료로부터구해진사피로- 윌크검정통계량의값은, 그값이작을수록 정규분포로부터벗어난정도가크다고할수있는데, 정규확률그림에서의상관계수에대한근 사적측도값으로생각될수있으며이는매우흥미로운사실로생각된다. shapiro.test() > ## shapiro.test() 함수의적용예: > set.seed(1000) 난수이용 > x.norm <- rnorm(n=100, m=10, sd=2) > shapiro.test(x.norm) Shapiro-Wilk normality test data: x.norm W = 0.99158, p-value = 0.7902 ------------------------------ ( 해석) 유의수준 5% 에서데이터가정규분포를따른다고할수있다.
22.3* 기타정규성검정 데이터셋이정규성(normality) 을만족하는지에대한검정은매우다양하다. 앞서소개한피어 슨카이제곱검정과콜모고로프- 스미르노프검정이외에도많은검정법이있다. 콜모고로프-스미르노프검정 ks.test() 피어슨카이제곱검정 chisq.test{stats} pearson.test{nortest} Jarque-Bera 검정은경제시계열자료의정규성검정에많이사용된다. 이방법은왜도 (skewness) 와첨도(kurtosis) 에기초한검정법으로, R 에서는다음함수를이용한다. jarque.bera.test{tseries} R 패키지 {nortest} 에서는정규성검정을수행하는다양한함수를제공한다. Anderson-Darling 검정은콜모고로프- 스미르노프(K-S) 검정의변형으로, 기각치의계산 에특정분포를이용한다. 정규, 로그- 정규, 지수, 와이블, 극단치 Ⅰ형, 로지스틱분포에대한 검정을제공한다. ad.test{nortest} Cramer-Von Mises 검정은경험분포함수와이론적분포간의면적을검정통계량( ) 으 로사용하는방법이다 cvm.test{nortest} Lillifors 검정은콜모고로프- 스미르노프검정의변형으로, 이검정에서평균과분산을모 르는경우자료로부터추정된값을사용하여검정을수행한다. lillie.test{nortest} 이외에도 Shapiro-Francia 검정과피어슨카이제곱검정을제공한다. sf.test{nortest} pearson.test{nortest}
22.4* 정규화 변환: 박스-콕스 변환 박스-콕스 변환(Box-Cox transformation)은 분산안정화 및 정규화를 위한 변환을 수행한다. 이 변환은 원자료( )에 대해 다음의 변환을 수행한다. log 위 변환에서 값은 원자료( )로부터 추정되며, 변환된 자료( )는 정규분포에 가까운 형태를 취하게 된다. 이 변환은 멱 변환(power transformation)으로도 알려져 있다. R에서 박스-콕스 변환은 다음 함수를 이용한다. boxcox{mass} box.cox{car} box.cox.power{car} [예제 1] 박스-콕스 정규화 변환 > x <- rexp(1000) # 지수분포로부터 난수 발생 > par(mfrow=c(1,2)) > hist(x) > qqnorm(x) # 정규확률그림 > par(mfrow=c(1,1)) > boxcox(x~1) # 로그-가능도 프로파일
> p <- box.cox.powers(x) # 박스-콕스변환의람다추정 > y <- box.cox(x, p$lambda) # 박스-콕스변환 > par(mfrow=c(1,2)) > hist(y) > qqnorm(y) # 변환된자료의정규확률그림 ------------------------------------------------------------- ( 해석) 치우침이강한원자료가박스-콕스변환이후정규분포에가까운형태로바뀌었음을알수있다. [ 예제 2] 선형모형에서의박스-콕스변환 선형모형에서의중요한가정가운데하나는오차항에대한정규성가정이다. 이가정은예측 변수가주어질때, 반응변수에대한정규성가정과같다. 여기서는선형모형의적합결과잔 차의분포가정규성을벗어날경우, 잔차가정규성을만족하도록하는반응변수의변환을찾 는다.
> library(faraway) > data(ozone) # ozone 자료는 LA 지역의오존과기상과의관계자료임 > head(ozone) O3 vh wind humidity temp ibh dpg ibt vis doy 1 3 5710 4 28 40 2693-25 87 250 33 2 5 5700 3 37 45 590-24 128 100 34 3 5 5760 3 51 54 1450 25 139 60 35 4 6 5720 4 69 35 1568 15 121 60 36 5 4 5790 6 19 45 2631-33 123 100 37 6 4 5790 3 25 55 554-28 182 250 38 > md <-lm(o3~temp+humidity+ibh, data=ozone) # 모형적합 > summary(md) Coefficients: Estimate Std. Error t value Pr(> t ) (Intercept) -1.049e+01 1.616e+00-6.492 3.16e-10 *** temp 3.296e-01 2.109e-02 15.626 < 2e-16 *** humidity 7.738e-02 1.339e-02 5.777 1.77e-08 *** ibh -1.004e-03 1.639e-04-6.130 2.54e-09 *** --- Signif. codes: 0 *** 0.001 ** 0.01 * 0.05. 0.1 1 Residual standard error: 4.524 on 326 degrees of freedom Multiple R-squared: 0.684, Adjusted R-squared: 0.6811 F-statistic: 235.2 on 3 and 326 DF, p-value: < 2.2e-16 > ## 오차에대한가정검토 > plot(md, which=1) # 적합값에대한잔차그림 위그림에서잔차의분산이일정하지않음을알수있다. 따라서반응변수에대해박스-콕스변환을적용한다.
> ## 박스-콕스의 멱 변환 > library(mass) > bc <- boxcox(md, plotit=t) > ## 에 대한 보다 자세한 정보를 얻기 위해 범위를 지정 > bc <- boxcox(md, plotit=t, lambda=seq(0,0.8,by=0.1)) > ## 최적의 값 > which.max(bc$y) [1] 35 > (lambda <- bc$x[which.max(bc$y)]) [1] 0.2747475 > ## 변환된 반응변수((O3^lambda)를 이용하여 새로운 모형을 적합 > md_best <- lm(o3^lambda~temp+humidity+ibh, data=ozone) > summary(md_best) Coefficients: Estimate Std. Error t value Pr(> t )
(Intercept) 8.779e-01 7.176e-02 12.233 < 2e-16 *** temp 1.521e-02 9.365e-04 16.242 < 2e-16 *** humidity 3.479e-03 5.946e-04 5.850 1.19e-08 *** ibh -5.610e-05 7.274e-06-7.711 1.52e-13 *** --- Signif. codes: 0 *** 0.001 ** 0.01 * 0.05. 0.1 1 Residual standard error: 0.2009 on 326 degrees of freedom Multiple R-squared: 0.7161, Adjusted R-squared: 0.7135 F-statistic: 274.1 on 3 and 326 DF, p-value: < 2.2e-16 > plot(md_best, which=1) 변환된반응변수에대한잔차그림은일정한분산을가짐을알수있다. 이에더해, 새로운 모형의성능이더우수함을알수있다( 다중상관계수: 0.7161 vs 0.684).
22 장연습문제 1. morley 자료에서빛의속도(Speed) 가정규분포를따르는지를알아보고자한다. (a) 정규확률그림을그리고, 이를해석하여라. (b) 사피로- 윌크검정을수행하여라. 2. trees 자료에대해물음에답하여라. (a) 체적(Volume) 변수가정규분포를따르는지를검정하여라. (b) 박스- 콕스변환을통해정규화변환을실시하여라. 그결과를정규확률그림으로비교하여 라. (c) 변환된자료에대해정규성검정을실시하여라. 3. mtcars 자료에서연비(mpg) 를마력(hp) 과무게(wt) 변수로모형화하고자한다. (a) 다중선형모형을적합하고잔차분석을실시하여라. (b) 잔차가정규분포를따르는가? (c) 잔차가정규분포를따르도록연비(mpg) 변수에대한적절한변환을실시하여라. (d) 변환된변수에대해다중선형모형을적합하고, 잔차에대한정규성검토를실시하여라.