본문 바로가기
Data Science/R 시각화

R을 활용한 다변량 데이터 시각화 :: Data 쿡북

by 쿡북 2017. 3. 6.


오늘은 R을 활용한 다변량 데이터를 시각화 하는 몇 몇 기본적인 사례를 공유한다.

시각화에 대한 방법은 너무도 많고 때에 따라서 적당한 시각화를 고려해야 하기 때문에 많은 사례들을 알아두는것도 도움이 된다고 본다.


| Bibrate boxplot 

두 변수에 대한 boxplot을 그릴 때 사용한다.

MVA 패키지에서 제공한다.


코드

library(HSAUR2)

library(MVA)

data(USairpollution)

head(USairpollution)


x = USairpollution[,c(4,5)]

bvbox(x, xlab="manu", ylab="popul")

title("bivariate boxplot")

identify(x)  # identify함수는 outliers를 밝히기 위해 이용된다.


결과





| Bubble plot

아래 예제를 보면 USairpollution 데이터 셋중 temp(온도) 와 wind(바람)의 산점도에 제 3의 변수인 SO2의 정보의 크기를 원으로 표기한 내용이다.

3개의 변수에 대한 표기가 가능하다.


코드

library(HSAUR2)

plot(wind~temp, data=USairpollution, pch=9)

head(USairpollution)

with(USairpollution, symbols(temp, wind, circles=SO2, inches=0.5, add=T))

title("Bubble plot")


결과



| Chernoff face

체르노프 페이스는 사람의 얼굴 이미지로 다변량 데이터를 표현하다. (얼굴그림)

얼굴의 가로 너비, 세로 높이, 눈, 코, 입 등의 길이를 기준으로 변수의 크기를 표현한다.

사실 아래 예제를 보면 한번에 여러 변수에 대한 표현이 가능하지만 그게 어떤 의미인지 해석하기가 좀 어려워 보인다.

분석 보다는 흥미가 주 목적일 것 같다.

R 에서는 aplpack 패키지에 포함되어 있다.


코드

library(MASS)

str(Cars93)

Cars93_tmp <- Cars93[c(1:20), c("Price","RPM","Length","Weight", "Wheelbase")] #숫자형 변수만 선택

head(Cars93_tmp)

#install.packages("aplpack")


library(aplpack)

faces(Cars93_tmp, face.type = 0, labels = Cars93[1:20,]$Model, main = "Chernoff faces, face.type = 0")

faces(Cars93_tmp, face.type = 1, labels = Cars93[1:20,]$Model, main = "Chernoff faces, face.type = 1")

faces(Cars93_tmp, face.type = 2, labels = Cars93[1:20,]$Model, main = "Chernoff faces, face.type = 2")


결과






[참고자료]

방송통신대학교 다변량 분석 강의교재

http://rfriend.tistory.com/170 : R 다변량 그래프 (5) 체르노프 얼굴그림 (Chernoff faces) : aplpack package, faces() 함수





댓글