35
저작자표시-비영리-변경금지 2.0 대한민국 이용자는 아래의 조건을 따르는 경우에 한하여 자유롭게 l 이 저작물을 복제, 배포, 전송, 전시, 공연 및 방송할 수 있습니다. 다음과 같은 조건을 따라야 합니다: l 귀하는, 이 저작물의 재이용이나 배포의 경우, 이 저작물에 적용된 이용허락조건 을 명확하게 나타내어야 합니다. l 저작권자로부터 별도의 허가를 받으면 이러한 조건들은 적용되지 않습니다. 저작권법에 따른 이용자의 권리는 위의 내용에 의하여 영향을 받지 않습니다. 이것은 이용허락규약 ( Legal Code) 을 이해하기 쉽게 요약한 것입니다. Disclaimer 저작자표시. 귀하는 원저작자를 표시하여야 합니다. 비영리. 귀하는 이 저작물을 영리 목적으로 이용할 수 없습니다. 변경금지. 귀하는 이 저작물을 개작, 변형 또는 가공할 수 없습니다.

엑셀 VBA를 이용한 MANOVA 프로그램 - s-space.snu ...s-space.snu.ac.kr/bitstream/10371/131311/1/000000133277.pdf · 는 다변량 자료를 분석하기 위한 다변량 분산분석

Embed Size (px)

Citation preview

Page 1: 엑셀 VBA를 이용한 MANOVA 프로그램 - s-space.snu ...s-space.snu.ac.kr/bitstream/10371/131311/1/000000133277.pdf · 는 다변량 자료를 분석하기 위한 다변량 분산분석

저 시-비 리- 경 지 2.0 한민

는 아래 조건 르는 경 에 한하여 게

l 저 물 복제, 포, 전송, 전시, 공연 송할 수 습니다.

다 과 같 조건 라야 합니다:

l 하는, 저 물 나 포 경 , 저 물에 적 된 허락조건 명확하게 나타내어야 합니다.

l 저 터 허가를 면 러한 조건들 적 되지 않습니다.

저 에 른 리는 내 에 하여 향 지 않습니다.

것 허락규약(Legal Code) 해하 쉽게 약한 것 니다.

Disclaimer

저 시. 하는 원저 를 시하여야 합니다.

비 리. 하는 저 물 리 목적 할 수 없습니다.

경 지. 하는 저 물 개 , 형 또는 가공할 수 없습니다.

Page 2: 엑셀 VBA를 이용한 MANOVA 프로그램 - s-space.snu ...s-space.snu.ac.kr/bitstream/10371/131311/1/000000133277.pdf · 는 다변량 자료를 분석하기 위한 다변량 분산분석

이학석사학위논문

엑셀 VBA를 이용한 MANOVA 프로그램

Application Framefor Multivariate Analysis of Variance with Excel VBA

2016년 2월

서울대학교 대학원

통 계 학 과

윤 연 지

Page 3: 엑셀 VBA를 이용한 MANOVA 프로그램 - s-space.snu ...s-space.snu.ac.kr/bitstream/10371/131311/1/000000133277.pdf · 는 다변량 자료를 분석하기 위한 다변량 분산분석

엑셀 VBA를 이용한 MANOVA 프로그램

지도교수 조신섭

이 논문을 이학석사 학위논문으로 제출함

2015년 10월

서울대학교 대학원

통 계 학 과

윤 연 지

윤연지의 이학석사 학위논문을 인준함

2015년 12월

위 원 장 김 용 대 (인)

부 위 원 장 조 신 섭 (인)

위 원 오 희 석 (인)

Page 4: 엑셀 VBA를 이용한 MANOVA 프로그램 - s-space.snu ...s-space.snu.ac.kr/bitstream/10371/131311/1/000000133277.pdf · 는 다변량 자료를 분석하기 위한 다변량 분산분석

Application Framefor Multivariate Analysis of Variance with Excel VBA

by Yeon-ji Yoon

A thesis submitted in partial fulfillment of

the requirement for the degree of Master of Sciencein the Department of Statistics

Seoul National UniversityFebruary, 2016

Page 5: 엑셀 VBA를 이용한 MANOVA 프로그램 - s-space.snu ...s-space.snu.ac.kr/bitstream/10371/131311/1/000000133277.pdf · 는 다변량 자료를 분석하기 위한 다변량 분산분석

국 문 초 록

자료 분석을 위해서 주로 사용되는 통계 분석틀(package)로는 SAS, SPSS, R 등을 들 수 있다. 그러나 이들 대부분은 고가의 비용을 지불해야 하며, 사용법이 영문으로 되어있거나 프로그래밍을 해야 한다는 점에서 일반인들이 사용하기에는 어려움이 있다. 이에 서울대학교 통계학과에서는 일반인들이 보다 쉽고 편리하게 통계 자료를 분석할 수 있도록 통계 분석틀인 KESS를 개발하였다. KESS는 엑셀(Excel) VBA를 기반으로 하여 사용자에게 보다 익숙하도록 작성되었다. 본 논문에서는 다변량 자료를 분석하기 위한 다변량 분산분석(MANOVA) 부분을 추가하였다. 주요어 : 엑셀 VBA, 통계 분석틀, KESS, 다변량 분산분석(MANOVA)

학번 : 2014-20285

Page 6: 엑셀 VBA를 이용한 MANOVA 프로그램 - s-space.snu ...s-space.snu.ac.kr/bitstream/10371/131311/1/000000133277.pdf · 는 다변량 자료를 분석하기 위한 다변량 분산분석

차 례

1. 서론

2. 다변량 분산분석(MANOVA)

2.1 일원배치 다변량 분산분석(One-Way MANOVA)

2.2 이원배치 다변량 분산분석(Two-Way MANOVA)

3. KESS의 다변량 분산분석 및 패키지별 비교

4. KESS에서 다변량 분산분석 실행 방법

5. 맺음말 및 추후과제

참고문헌

Abstract

Page 7: 엑셀 VBA를 이용한 MANOVA 프로그램 - s-space.snu ...s-space.snu.ac.kr/bitstream/10371/131311/1/000000133277.pdf · 는 다변량 자료를 분석하기 위한 다변량 분산분석

1

1. 서 론

다변량 분산분석(Multivariate Analysis of Variance: MANOVA)이란 종속변수의 수가 두 개 이상인 경우에 여러 모집단의 평균벡터를 동시에 비교하는 분석 기법이다. 종속변수의 개수가 한 개인 경우는 일변량 분산분석(ANOVA), 두 개 이상인 경우는 다변량 분산분석(MANOVA)이라고 부른다. 따라서 MANOVA에서는 종속변수가 벡터의 형태로 주어지므로 모집단의 평균벡터 사이에 차이가 있는지 여부를 판단하는 것이 주요 관심사이다. MANOVA를 위해 많이 사용되는 통계 패키지로는 SAS, SPSS와 R등을 들 수 있다. 이들은 MANOVA에 필요한 여러 가지 기능들을 다양하게 제공하고 있지만 각 패키지에서 제공하는 언어를 이용해서 프로그램을 작성해야 하거나 사용법이 영문으로 되어있어 일반인들이 사용하기 어려우며 고가의 사용료를 들여서 구입해야 한다는 부담이 있다. 서울대학교에서는 일반인들이 보다 편리하고 쉽게 통계 자료 분석을 할 수 있도록 Excel에서 구동되는 교육용 한글 통계 소프트웨어인 KESS를 개발하여 제공하고 있다. 본 논문에서는 다변량 자료를 분석하기 위한 MANOVA를 Excel VBA를 통해 구현하였고, 이를 KESS에 부메뉴로 추가하였다. 본 논문은 총 5장으로 구성되어 있다. 먼저 연구의 배경 및 목적을 제시하였고, MANOVA에 대한 설명, KESS의 MANOVA와 다른 패키지와의 비교, 마지막으로 KESS에서의 실행 방법과 연구의 결론 및 향후 전망에 대해 기술하였다.

Page 8: 엑셀 VBA를 이용한 MANOVA 프로그램 - s-space.snu ...s-space.snu.ac.kr/bitstream/10371/131311/1/000000133277.pdf · 는 다변량 자료를 분석하기 위한 다변량 분산분석

2

2. 다변량 분산분석(MANOVA)

MANOVA는 관측값이 벡터의 형태로 주어지는 경우에 평균벡터가 동일한지 아니면 유의미한 차이가 존재하는지 검정하는 분석 방법이다. ANOVA에서는 평균들의 차이가 유의한지를 자료의 흩어짐 정도를 나타내는 분산을 이용하여 비교하고 있으나, MANOVA의 경우는 공분산 행렬(covariance matrix)을 이용하여 평균벡터들의 차이가 유의한지를 비교해야 한다. 따라서 공분산 행렬을 일차원 값으로 변환하여 검정에 활용하고 있다.

2.1 일원배치 다변량 분산분석(One-Way MANOVA)

g개의 서로 독립적인 모집단으로부터 얻어진 랜덤표본이 다음과 같다고 하자.

표본 ⋯ 은 로부터의크기의랜덤표본

표본 ⋯ 은 로부터의크기의랜덤표본

표본 ⋯ 은 로부터의크기의랜덤표본

⋯ ⋯ 는 번째 표본에서 번째 개체의 차원 관찰

벡터이다. 여기에서 다변량 정규분포의 공분산 행렬은 모집단에 관계없이 로 동일하다고 가정한다.

(1) One-Way MANOVA 모형

One-Way MANOVA를 위해 다음과 같은 모형을 생각할 수 있다.

⋯ ⋯

Page 9: 엑셀 VBA를 이용한 MANOVA 프로그램 - s-space.snu ...s-space.snu.ac.kr/bitstream/10371/131311/1/000000133277.pdf · 는 다변량 자료를 분석하기 위한 다변량 분산분석

3

전체평균벡터 번째처리효과벡터 오차항으로서서로독립인

전체 표본의 크기를

이라고 할 때, 전체 평균 벡터는

이며 번째 처리효과벡터는 로 나타낼 수 있다.

이 때, 는 다음과 같은 조건을 만족한다.

One-Way MANOVA에서 검정하고자 하는 가설은 다음과 같이 모집단의 처리효과들이 동일하다는 것이다.

이제 관찰벡터 를 분해하여 생각해보자.

전체표본평균 번째처리효과 잔차

여기서 는 번째 처리방법의 평균에 해당된다. 즉, 번째 표본의 번째 개

체의 관찰벡터인 는 전체표본평균과 번째 처리효과와 잔차벡터의 합으로

표현할 수 있다. 는 의 추정량, 는 의 추정량,

는 오차 의 추정량이다.

Page 10: 엑셀 VBA를 이용한 MANOVA 프로그램 - s-space.snu ...s-space.snu.ac.kr/bitstream/10371/131311/1/000000133277.pdf · 는 다변량 자료를 분석하기 위한 다변량 분산분석

4

(2) One-Way MANOVA 표

다변량 자료의 흩어져 있는 정도를 나타내기 위해 제곱 및 교차곱의 합(sum of squares and crossproducts: SSCP)행렬을 이용한다.

′ ′

위의 식을 모든 와 에 대해 더하면,

이므로 다음과 같이

분해할 수 있다.

전체 처리방법간 처리방법내

를 번째 처리방법의 표본공분산행렬이라 할 때, 처리방법내 SSCP행렬은

다음과 같이 나타낼 수 있다.

이는 이표본의 경우에 합동공분산행렬 를

와 같이 나타냈던 것을 일반화한 것이라고 할 수 있다.

Page 11: 엑셀 VBA를 이용한 MANOVA 프로그램 - s-space.snu ...s-space.snu.ac.kr/bitstream/10371/131311/1/000000133277.pdf · 는 다변량 자료를 분석하기 위한 다변량 분산분석

5

(3) One-Way MANOVA의 검정통계량

검정하고자 하는 처리효과에 대응되는 추정량들의 SSCP행렬을 , 오차의 SSCP행렬을 라 하고,

: 관찰벡터의 차원(종속변수의 개수) : 가설 자유도 : 오차 자유도 ( ) min , ,

라고 하자.

① Wilks의 람다()

det

det

하에서

는 근사적으로 를 따른다. 단,

변동요인 제곱합과 교차곱(SSCP) 행렬 자유도처리방법간(treatment)

처리방법내(error)

전체

<표 2-1> One-Way MANOVA 표

Page 12: 엑셀 VBA를 이용한 MANOVA 프로그램 - s-space.snu ...s-space.snu.ac.kr/bitstream/10371/131311/1/000000133277.pdf · 는 다변량 자료를 분석하기 위한 다변량 분산분석

6

인경우

그외의경우

이다. min ≤ 인 경우에는 정확하게 -분포를 따른다.

② Pillai의 트레이스(trace)

하에서

는 근사적으로

를 따른다.

③ Hotelling의 트레이스(trace)

인 경우, 하에서

는 근사적으로

를 따른다. 단,

이다.

≤ 인 경우, 하에서

는 근사적으로

를 따른다.

④ Roy의 최대근

Page 13: 엑셀 VBA를 이용한 MANOVA 프로그램 - s-space.snu ...s-space.snu.ac.kr/bitstream/10371/131311/1/000000133277.pdf · 는 다변량 자료를 분석하기 위한 다변량 분산분석

7

하에서

는 근사적으로 를 따른다. 단, 은

의 고유값들 중 가장 큰 수이며 max 은 유의수준에서 하한선을 표현하는 F를 상한으로 하는 값이다.

One-Way MANOVA의 경우에는, Wilks의 람다 값은 det

det ,

Pillai의 트레이스 값은 , Hotelling의 트레이스 값은 , Roy의 최대근 값은 의 고유값들 중 가장 큰 값이 된다. 이 값들은 모두 근사적으로 F분포를 따르므로 이들을 이용하여 처리효과의 유의성을 검정할 수 있다.

2.2 이원배치 다변량 분산분석(Two-Way MANOVA)

관찰값에 두 가지 요인이 영향을 미치는 경우에는 Two-Way MANOVA 모형을 고려해볼 수 있다. 첫 번째 요인에는 개의 처리 수준이, 두 번째 요인에는 개의 처리 수준이 존재한다고 하면, 총 개의 처리조합을 생각할 수 있다. ⋯ ⋯ ⋯ 는 첫 번째 요인의 번째 수준

과 두 번째 요인의 번째 수준에 해당하는 개체에 대한 차원 관찰벡터이다. 여기서는 각 처리조합에 대한 표본의 크기는 모두 으로 동일하다고 가정한다. 반복횟수 이 1보다 큰 경우에는 두 요인간의 교호효과를 모형에 포함할 수 있다.

(1) Two-Way MANOVA 모형

Two-Way MANOVA를 위해 다음과 같은 모형을 생각할 수 있다.

⋯ ⋯ ⋯

Page 14: 엑셀 VBA를 이용한 MANOVA 프로그램 - s-space.snu ...s-space.snu.ac.kr/bitstream/10371/131311/1/000000133277.pdf · 는 다변량 자료를 분석하기 위한 다변량 분산분석

8

전체평균벡터 첫번째요인의 번째처리효과벡터 두번째요인의번째처리효과벡터 첫번째요인의 번째처리와두번째요인의번째처리의교호효과벡터 오차항으로서서로독립인

이 때, 는 다음과 같은 조건을 만족한다.

Two-Way MANOVA에서 검정하고자 하는 가설들은 다음과 같다.

⋯ ⋯

이제 관찰벡터 를 분해하여 생각해보자.

∙ ∙

전체표본평균 첫번째요인의번째처리효과 두번째요인의번째처리효과

∙ ∙

첫번째요인의 번째처리와두번째요인의 번째처리의교호효과

잔차

Page 15: 엑셀 VBA를 이용한 MANOVA 프로그램 - s-space.snu ...s-space.snu.ac.kr/bitstream/10371/131311/1/000000133277.pdf · 는 다변량 자료를 분석하기 위한 다변량 분산분석

9

전체평균∙ 첫번째요인의 번째처리방법의평균∙ 두번째요인의번째처리방법의평균 첫번째요인의 번째 두번째요인의번째처리방법의평균

여기서 는 의 추정량, ∙ 는 의 추정량, ∙ 는 의 추정량, ∙ ∙ 는 의 추정량, 는 오차 의 추정량이다.

(2) Two-Way MANOVA 표

다변량 자료의 흩어져 있는 정도를 나타내기 위해서 제곱 및 교차곱의 합(SSCP)행렬을 이용한다.

∙ ∙ ′

∙ ∙ ′

∙ ∙ ∙ ∙ ′

Page 16: 엑셀 VBA를 이용한 MANOVA 프로그램 - s-space.snu ...s-space.snu.ac.kr/bitstream/10371/131311/1/000000133277.pdf · 는 다변량 자료를 분석하기 위한 다변량 분산분석

10

는 첫 번째 요인에 의한 행렬을, 는 두 번째 요인에 의한 행

렬을, 는 첫 번째와 두 번째 요인의 교호작용에 의한 행렬을,

는 잔차에 의한 행렬을, 는 전체 평균에 의해 수정된 행렬을 나타낸다.

(3) Two-Way MANOVA의 검정통계량

첫 번째 요인의 처리효과가 유의한지를 검정하기 위한 가설은 다음과 같다.

다음과 같이 네 가지 형태의 검정통계량이 이용되며, 의 값은 첫 번째 요인의 자유도인 이다.

Wilks의 람다 : det

det

Pillai의 트레이스 :

변동요인 제곱합과 교차곱(SSCP) 행렬 자유도

첫 번째 요인

∙ ∙ ′

두 번째 요인

∙ ∙ ′

교호작용

∙ ∙

∙ ∙ ′

오차

전체

<표 2-2> Two-Way MANOVA 표

Page 17: 엑셀 VBA를 이용한 MANOVA 프로그램 - s-space.snu ...s-space.snu.ac.kr/bitstream/10371/131311/1/000000133277.pdf · 는 다변량 자료를 분석하기 위한 다변량 분산분석

11

Hotelling의 트레이스 :

Roy의 최대근 : 행렬의 고유값들을

크기 순서대로 라고 할 때,

Wilks의 람다 값을 이용한 통계량

는 하에서

를 근사적으로 따른다. 따라서

≥ 이면 유의수준 에서

⋯ 을 기각할 수 있으며, 첫 번째 요인의 효과가 유의

하다고 판단한다.

두 번째 요인의 처리효과가 유의한지를 검정하기 위한 가설은 다음과 같다.

다음과 같이 네 가지 형태의 검정통계량이 이용되며, 의 값은 두 번째 요인의 자유도인 이다,

Wilks의 람다 : det

det

Pillai의 트레이스 :

Hotelling의 트레이스 :

Roy의 최대근 : 행렬의 고유값들을

크기 순서대로 라고 할 때,

Page 18: 엑셀 VBA를 이용한 MANOVA 프로그램 - s-space.snu ...s-space.snu.ac.kr/bitstream/10371/131311/1/000000133277.pdf · 는 다변량 자료를 분석하기 위한 다변량 분산분석

12

Wilks의 람다 값을 이용한 통계량

는 하에서

를 근사적으로 따른다. 따라서

≥ 이면 유의수준 에서

⋯ 을 기각할 수 있으며, 두 번째 요인의 효과가 유의

하다고 판단한다.

교호작용 효과가 유의한지를 검정하기 위한 가설은 다음과 같다.

⋯ ⋯

다음과 같이 네 가지 형태의 검정통계량이 이용되며, 의 값은 교호작용의 자유도인 이다,

Wilks의 람다 : det

det

Pillai의 트레이스 :

Hotelling의 트레이스 :

Roy의 최대근 : 행렬의 고유값들을

크기 순서대로 라고 할 때,

Wilks의 람다 값을 이용한 통계량

는 하에서

를 근사적으로 따른다. 따라서

≥ 이면 유의수준 에서

⋯ ⋯ 을 기각할 수 있으며, 교호작용 효과가

Page 19: 엑셀 VBA를 이용한 MANOVA 프로그램 - s-space.snu ...s-space.snu.ac.kr/bitstream/10371/131311/1/000000133277.pdf · 는 다변량 자료를 분석하기 위한 다변량 분산분석

13

유의하다고 판단한다.

Page 20: 엑셀 VBA를 이용한 MANOVA 프로그램 - s-space.snu ...s-space.snu.ac.kr/bitstream/10371/131311/1/000000133277.pdf · 는 다변량 자료를 분석하기 위한 다변량 분산분석

14

3. KESS의 다변량 분산분석 및 패키지별 비교

통계 자료 분석 도구가 갖추어야할 중요한 요건 중의 하나는 사용자에게 편리한 인터페이스 환경을 제공해야 한다는 것이다. 또한 다양한 종류의 자료파일을 불러오거나 자료를 직접 입력할 수 있어야 하고, 분석 결과를 효과적으로 보고서로 작성할 수 있어야 한다. Microsoft Excel은 이러한 측면에서 매우 우수한 스프레드시트 프로그램이며, 자료의 관리 및 계산, 그래프의 작성 등을 손쉽게 할 수 있다는 점에서 일반인들에게 가장 널리 사용되고 있는 프로그램이다. 위와 같은 점에 착안하여 KESS(2016)는 Microsoft Excel을 개발의 도구로 삼았다. 따라서 KESS에서는 Excel에서 제공되는 모든 기능들을 그대로 이용할 수 있으며, 일반인들이 편리하게 통계분석을 할 수 있도록 한다는 점에서 통계 분석 도구로써 상당한 장점을 갖고 있다. 기초적인 통계 분석은 Excel의 데이터 분석 도구를 통해서도 가능하다. 그러나 KESS에서는 SAS, SPSS 등의 통계 패키지에서와 같이 통계분석 도구를 메뉴 형식으로 제공함으로써, Excel의 데이터 분석 도구와는 차별화된 보다 통합적이고 체계화된 형태의 통계 분석 프로그램을 제공하고 있다. 그러나 이전의 KESS에서는 다변량 자료에 대한 분산분석은 지원하지 않았다. 이에 본 논문에서는 다변량 분산분석을 구현하였고 Excel의 [데이터 분석] 도구와 동일한 형태의 데이터 입출력 방식을 이용하였다. 또한 본 논문에서는 다변량 분산분석 도구를 독립적으로 제공하는 것에 그치지 않고 KESS의 부메뉴로 일반화 선형모형 분석 도구에 다변량 분산분석을 포함시켜 다른 분석들과의 연계가 가능하도록 했다는 점에서 본 논문의 개발의 의의를 찾을 수 있다.

(1) 개발에 사용된 툴과 프로그램의 구성

개발에 사용된 툴은 Microsoft Excel VBA(Visual Basic for Application)이다. VBA는 Visual Basic 편집기라는 통합 프로그래밍 환경과 Basic 프로그래밍 언어를 조합한 것이다.

(2) 개발 알고리즘 및 출력물의 구성

Page 21: 엑셀 VBA를 이용한 MANOVA 프로그램 - s-space.snu ...s-space.snu.ac.kr/bitstream/10371/131311/1/000000133277.pdf · 는 다변량 자료를 분석하기 위한 다변량 분산분석

15

출력물의 기본적인 구성은 다변량 검정과 분산분석표이다. 다변량 검정표에서는 다변량 검정을 위한 4가지 통계량인 Wilks의 람다, Pillai의 트레이스, Hotelling의 트레이스, Roy의 최대근 값과 그에 해당하는 유의확률을 출력한다. 통계량들은 각 효과별로 따로 표시되며, Wilks의 람다를 기준으로 검정 결과를 해석한 문장이 표의 아래쪽에 출력된다. 분산분석표는 각 종속변수별로 제공된다. 사용자가 원하는 경우에는 기술통계량, 적합값 및 잔차, 등분산검정, SSCP행렬, 프로파일 도표를 선택적으로 출력할 수 있다.

(3) 패키지별 출력 가능한 결과들의 비교

SAS, SPSS, R 및 본 논문에서 개발한 KESS의 패키지별 다변량 분산분석의 내용과 출력 결과는 <표 3-1>과 같다.

KESS SPSS SAS R

메뉴 구성일반선형모형

>다변량 분산분석

일반선형모형>다변량

GLM Procedure

manova

불균형데이터 요인 1개일

때만 가능가능 가능

가능

다원배치요인 최대

2개요인 여러 개

가능요인 여러 개

가능 요인 최대

2개

모형 선택 O O O O

공변량 X O O X

WLS가중값 X O O X

기술통계량 O O X X

분산분석표 O O O X

다변량검정 O O O O

모수 추정 X O O X

Page 22: 엑셀 VBA를 이용한 MANOVA 프로그램 - s-space.snu ...s-space.snu.ac.kr/bitstream/10371/131311/1/000000133277.pdf · 는 다변량 자료를 분석하기 위한 다변량 분산분석

16

(※ SAS, R에서 ‘X’표시 된 부분들은 다른 Procedure를 이용하면 출력 가능)

(4) 패키지별 MANOVA의 다변량 검정 결과 비교

위치(Site)와 종류(Type)을 모수요인으로 하고 Al, Fe, Mg의 양을 종속변수로 하는 자료를 이용하여 MANOVA를 실행한 결과 중 다변량 검정을 위한 통계량을 비교하면 <표 3-2>와 같다. 모든 패키지에서 통계량 값이 동일하다.

(※ 소수점 넷째자리에서 반올림한 값)

적합값 및 잔차 O O X X

SSCP행렬 O O O O

다중비교 X O X X

등분산 검정 O O O X

도표상자그림프로파일

도표

데이터산점도프로파일

도표

상자그림프로파일

도표X

<표 3-1> 다변량 분산분석의 내용에 관한 패키지별 비교

효과 통계량 KESS SPSS SAS R

Site

Wilks의 람다 0.0246 0.025 0.0246 0.0246Pillai의 트레이스 1.0845 1.084 1.0845 1.0845Hotelling의 트레이스 35.2444 35.244 35.2444 35.244Roy의 최대근 35.1182 35.118 35.1182 35.118

Type

Wilks의 람다 0.3737 0.374 0.3737 0.3737Pillai의 트레이스 0.6368 0.637 0.6368 0.6368Hotelling의 트레이스 1.6479 1.648 1.6479 1.648Roy의 최대근 1.6306 1.631 1.6306 1.631

Site*Type

Wilks의 람다 0.0375 0.038 0.0375 0.0375Pillai의 트레이스 1.6456 1.646 1.6456 1.6456Hotelling의 트레이스 8.7357 8.736 8.7357 8.736Roy의 최대근 6.2839 6.284 6.2839 6.284

<표 3-2> 패키지별 다변량 검정 통계량 비교

Page 23: 엑셀 VBA를 이용한 MANOVA 프로그램 - s-space.snu ...s-space.snu.ac.kr/bitstream/10371/131311/1/000000133277.pdf · 는 다변량 자료를 분석하기 위한 다변량 분산분석

17

4. KESS에서 MANOVA의 실행 방법

KESS에서 MANOVA를 실행하기 위해 위치(Site)와 종류(Type)을 모수요인으로 하여 이에 따른 Al, Fe, Mg의 양이 종속변수로 주어진 자료를 이용한다. 자료의 형태는 <그림 4-1>과 같이 첫 번째 행은 변수의 이름을 지정하고, 두 번째 줄부터 자료를 입력하는 것이 기본이다.

<그림 4-1> 자료의 입력 형태

Page 24: 엑셀 VBA를 이용한 MANOVA 프로그램 - s-space.snu ...s-space.snu.ac.kr/bitstream/10371/131311/1/000000133277.pdf · 는 다변량 자료를 분석하기 위한 다변량 분산분석

18

다변량 분산분석을 실행하기 위해서는 KESS.XLA 파일을 열고 <그림 4-2>와 같이 메뉴의 통계분석에서 일반선형모형 중 다변량 분산분석을 선택한다.

<그림 4-3>과 같이 자료가 입력된 워크시트의 첫 번째 행을 변수명으로 인식하여 이것이 ‘선택 변수’ 란에 표시된다. 분석할 종속변수와 모수요인을 선택하여 오른쪽의 해당하는 칸으로 이동시킨다. KESS의 MANOVA에서는 모수요인의 개수를 최대 2개로 제한하였으며 이원배치일 때만 모형에 교호작용 포함 여부를 선택할 수 있다. 출력옵션에서 필요한 옵션들을 선택한 뒤 확인을 누르면 프로그램이 실행된다, <그림 4-4>.

<그림 4-2> MANOVA 실행 방법

Page 25: 엑셀 VBA를 이용한 MANOVA 프로그램 - s-space.snu ...s-space.snu.ac.kr/bitstream/10371/131311/1/000000133277.pdf · 는 다변량 자료를 분석하기 위한 다변량 분산분석

19

<그림 4-3> MANOVA 폼

<그림 4-4> MANOVA 출력옵션

MANOVA의 실행 결과는 ‘_통계분석결과_’라는 새로운 워크시트에 출력된다. 출력 결과물은 다변량 검정 결과와 함께 각 종속변수별로 분산분석표를 표시하며, 추가로 출력 옵션을 이용해 기초통계량, 적합값 및 잔차, 등분산검정, SSCP행렬, 프로파일 도표를 확인할 수 있다.

Page 26: 엑셀 VBA를 이용한 MANOVA 프로그램 - s-space.snu ...s-space.snu.ac.kr/bitstream/10371/131311/1/000000133277.pdf · 는 다변량 자료를 분석하기 위한 다변량 분산분석

20

교호작용을 포함하는 Two-Way MANOVA를 실행했을 때의 결과는 다음과 같다.

각 효과에 대해 4가지의 다변량 검정 통계량과 유의확률이 출력된다. Wilks의 람다를 이용한 통계량을 기준으로 결과를 해석한 문장이 각 표의 아래쪽에 출력된다, <그림 4-5>.

<그림 4-5> 통계분석결과_다변량 검정

Page 27: 엑셀 VBA를 이용한 MANOVA 프로그램 - s-space.snu ...s-space.snu.ac.kr/bitstream/10371/131311/1/000000133277.pdf · 는 다변량 자료를 분석하기 위한 다변량 분산분석

21

종속변수별로 분산분석표가 출력된다. 각각의 종속변수별로 모수요인의 영향을 확인할 수 있다, <그림 4-6>.

<그림 4-6> 통계분석결과_분산분석표

Page 28: 엑셀 VBA를 이용한 MANOVA 프로그램 - s-space.snu ...s-space.snu.ac.kr/bitstream/10371/131311/1/000000133277.pdf · 는 다변량 자료를 분석하기 위한 다변량 분산분석

22

<그림 4-7> 통계분석결과_기술통계량

Page 29: 엑셀 VBA를 이용한 MANOVA 프로그램 - s-space.snu ...s-space.snu.ac.kr/bitstream/10371/131311/1/000000133277.pdf · 는 다변량 자료를 분석하기 위한 다변량 분산분석

23

<그림 4-7>은 출력옵션에서 설정한 기술통계량 출력 결과이다. 두 모수요인의 각 수준 조합별로 관측도수, 평균, 표준편차를 출력한다.

<그림 4-8> 통계분석결과_기술통계량(일원배치)

<그림 4-8>은 Site 하나만을 모수요인으로 가지는 One-Way MANOVA의 기술통계량 출력 결과이다. 모수요인이 하나이기 때문에 Two-Way MANOVA와 다른 형태로 출력된다.

<그림 4-9> 통계분석결과_SSCP행렬

출력 옵션에서 SSCP행렬을 선택하면 각 효과에 대한 SSCP행렬과 오차에 대한 SSCP행렬이 출력된다. 이를 통해 종속변수들 사이의 상관관계를 파악할 수 있다, <그림 4-9>.

Page 30: 엑셀 VBA를 이용한 MANOVA 프로그램 - s-space.snu ...s-space.snu.ac.kr/bitstream/10371/131311/1/000000133277.pdf · 는 다변량 자료를 분석하기 위한 다변량 분산분석

24

<그림 4-10> 통계분석결과_등분산 검정 Two-Way MANOVA의 경우에는 등분산 검정을 할 수 없으며, <그림 4-10>과 같은 결과가 출력된다.

<그림 4-11> _통계분석결과_등분산 검정(One-Way)

One-Way MANOVA의 경우에 출력 옵션에서 등분산 검정을 선택하면 <그림 4-11>과 같이 Levene’s test 결과가 출력된다. 등분산 가정이 위배되는 경우에는 다변량 분산분석의 결과 해석에 유의한다.

Page 31: 엑셀 VBA를 이용한 MANOVA 프로그램 - s-space.snu ...s-space.snu.ac.kr/bitstream/10371/131311/1/000000133277.pdf · 는 다변량 자료를 분석하기 위한 다변량 분산분석

25

Two-Way MANOVA의 경우에는 출력옵션에서 프로파일 도표를 선택하면 <그림 4-12>와 같이 각 종속변수별로 프로파일 도표가 출력된다. 그래프를 통해 모수요인의 교호작용 여부를 판단할 수 있다.

One-Way MANOVA의 경우에는 출력옵션에서 프로파일 도표를 선택하면 <그림4-13>과 같이 각 종속변수별로 상자그림이 출력된다.

<그림 4-12> _통계분석결과_프로파일 도표

<그림 4-13> _통계분석결과_프로파일 도표(One-Way)

Page 32: 엑셀 VBA를 이용한 MANOVA 프로그램 - s-space.snu ...s-space.snu.ac.kr/bitstream/10371/131311/1/000000133277.pdf · 는 다변량 자료를 분석하기 위한 다변량 분산분석

26

출력옵션에서 적합값 및 잔차를 선택하면 기존의 자료가 있던 Worksheet에 각 종속변수별로 적합값과 잔차가 출력된다, <그림 4-14>.

<그림 4-14> 통계분석결과 적합값 및 잔차

Page 33: 엑셀 VBA를 이용한 MANOVA 프로그램 - s-space.snu ...s-space.snu.ac.kr/bitstream/10371/131311/1/000000133277.pdf · 는 다변량 자료를 분석하기 위한 다변량 분산분석

27

5. 맺음말 및 추후과제

다변량 분산분석(MANOVA)은 여러 통계 패키지에서 제공하고 있으나, 통계 비전공자들이 쉽게 활용할 수 있도록 Excel에서 구동되는 분석도구의 일환으로 제공하고자 하였다. 본 논문에서는 Excel에서 구동되는 MANOVA를 개발하되, 사용자 입장에서 사용자의 요구를 만족시키고, 보다 편리하게 사용할 수 있도록 한다는 부분에 개발의 주안점을 두었다. 특히 분석 시에 초기 자료를 지정하는 데에 있어서 범위 지정이 다른 통계 패키지에 비해 용이하다는 것이 큰 장점이다. 또한 본 논문에서는 MANOVA를 KESS에 부메뉴로 추가시킴으로써 보다 넓은 차원에서 다양한 분야의 통계분석이 가능하도록 하여 KESS의 활용도를 높이는데 의의를 두었다. 하지만 본 논문에서는 최대 두 개의 모수요인을 가진 모형만을 다루고 있다는 데에 그 한계가 있으며, 추후에 여러 개의 모수요인에 대한 MANOVA를 할 수 있도록 확장한다면 KESS가 MANOVA의 도구로써 보다 높은 완성도를 가질 수 있을 것이다.

Page 34: 엑셀 VBA를 이용한 MANOVA 프로그램 - s-space.snu ...s-space.snu.ac.kr/bitstream/10371/131311/1/000000133277.pdf · 는 다변량 자료를 분석하기 위한 다변량 분산분석

28

참 고 문 헌

송문섭, 조신섭(2002) 「SAS를 이용한 통계자료분석」, 자유 아카데미.

김기영(1994) 「다변량 통계자료분석」, 자유 아카데미.

Johnson, R.A. and Wichern, D.W.(2007) 「Applied Multivariate Statistical Analysis 6th ed.」, Pearson.

KESS(2016). Korean Educational Statistics Software, 서울대학교 시계열 연구실, http://stat.snu.ac.kr/time

SAS/STAT(R) 9.2 User’s Guide, Second Edition

SAS/STAT(T) 13.2 User’s Guide

Quick-R - http://www.statmethods.net/stats/anova.html

Page 35: 엑셀 VBA를 이용한 MANOVA 프로그램 - s-space.snu ...s-space.snu.ac.kr/bitstream/10371/131311/1/000000133277.pdf · 는 다변량 자료를 분석하기 위한 다변량 분산분석

Abstract

Statistical packages such as SAS, SPSS, R have been widely used for data analysis. Since most of them are developed in English, it is difficult to be used by general public. And they put some burden of cost on users. In the thesis we summarize the fundamental concepts necessary for the development of statistical packages and develop an multivariate analysis of variance package based on these concepts. Since most of the windows menu and results are provided in Korean, the package is more user-friendly. EXCEL is used as a basis tool for the development since it is the most widely used package and is easy to use for the input and output of the data.

Keyword : Excel VBA, KESS, Multivariate analysis of variavne (MANOVA)

Student Number : 2014-20285