728x90

1. 주성분분석이란?

2. 주성분분석의 이론적 배경

(1) 주성분분석 실행

(2) 선형결합과 설명력

(3) 제1주성분과 제2주성분

(4) 주성분구하는 공식

(5) 주성분 점수

(6) 고유치

3. 주성분분석의 과정

4. PRINCOMP 의 형태

5. 주성분분석의 예

6. 주성분분석의 이슈

 

1. 주성분분석이란?

 

주성분분석이란 여러 변수들의 변량을 󰡔주성분󰡕 이라 불리는 보다 적은 수의 변수로 요약하고자 하는 기법입니다.

주성분분석에서는 종속변수란 개념이 없습니다. 그냥 변수들만(독립변수들만 이라고 생각하시면 됩니다)의 관계 또는 변수들의 변량을 잘 설명하는 새로운 변수(원래 변수들의 선형결합으로 만들어짐)를 만들어 내는 기법으로만 생각하시면 됩니다. 

 

일반적으로 어떤 현상에 대하여 분석하고자 할 때에는 우선 관련된 여러 변수들을 조사하게 됩니다변수의 수가 많아질수록 모든 변수를 고려한 분석은 상당히 어렵게 됩니다특히 빅데이터 시대에는 관측치수도 많지만, 각 관측치마다 변수(features 라고도 합니다)의 수도 많아집니다.

그리하여 이 변수들을 간단하게 보다 적은 개수의 변수로 나타낼 수만 있으면 분석하거나 해석하는데 편리할 것입니다. 이런 작업을 "차원축소(Dimension Reduction)"라고 하고, 이런 작업을 하는 것이 "주성분분석(Principal Component Analysis)"입니다.

빅데이터에서는 유사한 변수들이 많이 있는데, 이들 변수들의 상관관계가 워낙 높기도 하고, 이들 비슷한 변수 중에서 대표되는 변수를 선택하기도 쉽지 않은 경우가 있습니다. 이 때에는 이들 변수를 분석에서 제외하기 보다는 주성부분석을 통해 주성분을 만들어 사용하는 것이 예측력을 높히는데 도움이 됩니다.

SAS 에서는 SAS/STAT 의 프로시져 PROC PRINCOMP

R 에서는 패키지 {stats} 의 princomp( ) 함수 이용하면 됩니다.

 

[SAS로 하는 주성분분석]

* 주성분분석을 행하는 프로그램 – 13_주성분분석.sas;

DATA a1;INPUT x1 x2 @@;CARDS;

4 15

6 16

7 11

8 10

9 6

11 8

12 10

13 14

 ;

PROC PRINCOMP ;VAR x1 x2;RUN;

PROC PRINCOMP COV;VAR x1 x2;

RUN;

 

예전에는 주성분분석의 예제로 미국 50개 주 범죄통계를 예를 들었습니다.

R 설치할 때 기본으로 설치되는 패키지 {datasets} 에 USAreests 데이터에는 Murder, Assualt, UrbanPop, Rape, 4 개의 변수로 되어 있어서 SAS 개정판에는 R 데이터를 사용해 보려고 합니다...

 

[R로 하는 주성분분석]

# 주성분분석을 행하는 프로그램 – 13_주성분분석.R

USArrests
str(USArrests)   # 
princomp(USArrests,cor=TRUE)
prin_02 <-princomp(USArrests,cor=TRUE)
## 주성분분석의 다른 코딩 Formula interface
princomp(~ ., data = USArrests, cor = TRUE)
summary(prin_02)

 

주성분분석에 사용되는 데이터들의 예제

IRIS 데이터

암수거북이 등딱지의 길이, 폭, 높이

뉴욕 주식시장의 주가 수익률(5개 변수)

신체조건과 운동능력

국,영,수, 불어, 물리 성적

LA오염  1169개 지역, 67개 변수

'SAS, R, Python 일반' 카테고리의 다른 글

분산분석법이란?  (0) 2020.05.30
1.3 SAS University Edition  (0) 2020.05.29
1.1 SAS란 무엇인가  (0) 2020.05.29
제01강. SAS설치와 실습  (0) 2020.05.29

+ Recent posts