SW/R

R : 산점도 (개념 및 예제)

얇은생각 2019. 2. 12. 12:30
반응형

다변량 자료

다변량 자료는 키와 몸무게의 관계와 같이 두개 이상의 변수를 동시에 다루어야 하는 자료를 뜻합니다. 두개인 경우에는 특히 이변량 자료라고 칭합니다. 일변량 자료는 vectcor에 저장하면 되지만, 다변량 자료는 matrix 또는 data frame에 저장하여 분석합니다. 키와 몸무게의 관계를 분석할 떄 키, 몸무게는 변수가 됩니다. 각 변수는 데이터셋에서 열로 표현됩니다.



이변량 자료의 분포 및 상관관계 시각화

mtcars 데이터셋에서 자동차 중량(wt) 와 연비(mpg) 의 상관관계를 산점도를 통해 확인해보겠습니다.


wt <-mtcars$wt
mpg <- mtcars$mpg
plot(wt, mpg, # 2개 변수(x축,y축)
main="Car_Weight-mpg", # 제목
xlab="Car_Weight ", # x축 레이블
ylab="Miles_Per_Gallon ", # y축 레이블
col="red", # point 의 color
pch=19) # point 의 종류


그래프


중량이 큰 차일수록 연비가 떨어지는 것이 보이시나요? 따라서 연비 좋은 차를 구매하시려면 경량차를 타야합니다.



옵션

수 

설명 

 main="main title"

 제목설정 : Title Settings

 sub="sub title

 서브제목설정 : Sub-title setting 

 xlab="char", ylab="char

 축에 사용할 문자열 지정 : Specify the string to use for the axis

 ann=F

 제목을 지정하지 않음 : Title not specified

 tmag=2 

 문자의 확대률 지정 : Specifies the magnification of a character 

 axes =F 

 축을 표시하지 않음 : Do not display axis

 axis

 축을 사용자의 지정값으로 표시 : Mark axis as user specified value


위 표를 활용해서 옵션을 지정하시면 됩니다.



그래프 타입 선택


 type="l

 선 모양 그래프 (꺾은선 그래프) : Line shape graph (dashed line graph)

 type="p"

 점 모양 그래프 (기본값) : Point shape graph (default)

 type="b" 

 점과 선 모양 그래프 :   Points and Line Shape Graphs

 type="c" 

 "b"에서 점을 생략한 모양 : the omission of points from "b".

 type="o"

 점과 선을 중첩해서 그린 그래프 :  Graph Overlaid Points and Lines

 type="h" 

 각 점에서 x축 까지의 수직선 그래프 : Graph of vertical lines from each point to the x-axis

 type="s" 

 왼쪽값을 기초로 계단 모양으로 연결한 그래프 :   Graph of stairs based on left value

 type="S" 

 오른쪽 값을 기초로 계단모양으로 연결한 그래프 : Graph of stairs based on right value

 type="n" 

 축만 그리고 그래프는 그리지 않음 : Draw axis only and do not draw a graph


그래프 타입을 선택하여 원하는 그래프를 출력할 수 있습니다.

 


선의 모양 선택

 lty=0, lty="blank" 

 투명선 : invisible lines

 lty=1, lty="solid" 

 실선 : a broken line

 lty=2, lty="dashed" 

 대쉬선 : Daishin Line

 lty=3, lty="dotted" 

 점선 : a dotted line

 lty=4, lty="dotdash" 

 점선과 대쉬선 : a dotted line and dash line

 lty=5, lty="longdash" 

 긴 대쉬선 : a long dash

 lty=6, lty="twodash" 

 2개의 대쉬선 : two dashes


선의 모양 역시 선택할 수 있습니다.



, 기호 등

 col=1, col="blue" 

 기호의 색지정 : Color the symbol

1:black. 2:Red, 3:green, 4: Blue, 5: Light Blue, 6: Bora, 7:Gray

 pch=0, pch="문자

 점의 모양 지정 : Specify the appearance of points

 bg ="blue" 

 그래프의 배경색 지정 : Specify graph background color

 lwd="숫자

 선을 그릴때 선의 굵기 지정 : Specify the thickness of the line when drawing a line

 cex="숫자

 점이나 문자를 그릴때 점이나 문자의 굵기를 지정 : Specifies the thickness of a point or character when drawing a point or character


색과 기호도 선택할 수 있습니다. 예제 시 활용해보세요.



포인터의 종류


pch의 종류는 위와 같습니다. 원하는 종류를 선택해서 활용하면 됩니다.



pairs()


vars <- c("mpg","disp","drat","wt") # 대상 변수를 선언
target <- mtcars[,vars] # target에 데이터 셋 입력
pairs(target, # 대상 데이터와 연결
main="Multi plots") # 메인 제목 입력


그래프


위 예제처럼 pairs() 함수를 활용해서 여러 변수들 사이의 상관관계를 한번에 확인할 수 있습니다.



그룹 정보가 있는 2변량 데이터의 분포 보기


iris.2 <- iris[,3:4] # 각 데이터 입력하기
point <- as.numeric(iris$Species) # 각각 포인트 모양 정하기
color <- c("red","green","blue") # 각각 포인트 컬러 정하기
plot(iris.2, # 데이터 입력
main="Iris plot", # 제목 정하기
pch=c(point), # 각각 포인트 모양 입력
col=color[point]) # 가각 포인트 컬러 입력


그래프


위 iris 데이터셋에서 Species 정보에 따른 Petal.Length, Petal.Width 의 분포를 알아보았습니다. color[point]의 point 는 무엇을 의미할까요? species의 setosa :1, versicolor:2, virginica:3 으로 표현되는 것입니다. 위 예제 코드를 통해 유추해보세요.  


위 그래프로부터 유용한 정보를 유추해보세요. 주어진 수치나 그래프로부터 정보를 얻는 것이 데이터 분석의 목적인 것을 기억합시다.

반응형