xyplot() 을 사용한 플롯 그리기 연습
# xyplot 함수를 가지고 있는 lattice package를 활용. 없다면 install.packages("lattice") 먼저 실행
require(lattice)
# 이전의 KBO 데이터 셋을 사용. 참고 글의 스크립트 먼저 실행
# KBO 데이터셋에 대한 설명 내용이 있는 글 ==> http://blog.daum.net/revisioncrm/171 )
attach(k2)
# 타수를 구별해서 표시하기 위해 미리 데이터를 타수 atbat 기준으로 내림차 정렬 실시
k3<-k2[order(-atbat),]
attach(k3)
# 출루율과 장타율을 팀별로 표시하는 그래프 생성
xyplot(robase ~ rlong | team, data=k3)
# 플롯의 점들은 투명하게 나타남
# 분석결과의 해석 : 상위 50명 가량의 타자들로 구성된 데이터 셋이므로 점이 많다는 것은
# 많은 타자가 비교적 좋은 성적을 보이는 팀이라는 것을 나타냄
# 두산 기아 롯데 에 장타율이 높은 타자가 비교적 적은 편임을 확인
# 단, 출루율과 장타율 모두가 비율이므로 타수가 적어서 나타난 경우 기여도 낮을 것임
# 이 문제를 해결하기 위해 추가적인 차원을 색상을 사용해서 플롯에 포함
# 타수가 많은 선수는 (점) 는 붉은 색으로 타수가 적은 선수는 푸른 색으로 표시
# 먼저 데이터 프레임에 컬러 값을 가진 필드를 생성
k3$color[atbat > 190] <- "red"
k3$color[atbat > 160 & atbat <=190] <- "green"
k3$color[atbat <= 160] <- "blue"
# 타수가 표시되도록 플롯을 생성
# pch is the option for dots - pch=19 이면 색상을 가진 둥근 점으로 표시
# 색상은 앞서 추가한 color 필드로 부터 가져오도록 지정
xyplot(robase ~ rlong | team, data=k3, pch=19 ,
fill.color = as.character(k3$color),
panel = function(x,y, fill.color,..., subscripts) {
fill <- fill.color[subscripts]
panel.xyplot(x,y, col=fill, ... ) } )
# 분석 결과의 해석 : 삼성은 두명의 타자가 출루율과 장타율 모두 높으며 이들은 타수가 매우 큼
# 확실하고 꾸준한 공격 기여도를 가진 두명의 선수가 존재한다는 의미
# 다른 팀에는 이 정도의 선수가 없음
# 두산은 출루율과 장타율 모두가 전반적으로 낮을 뿐 아니라 꾸준히 출장하는 선수도 적음
'R 데이터 분석' 카테고리의 다른 글
[R 분석] searchtwitter 한글 오류 검토 (0) | 2013.04.12 |
---|---|
[R 데이터 분석 예제] ggplot2 qplot 활용 (0) | 2013.03.29 |
[R 분석 연습] 박근혜 당선인 워드클라우드 2013 02 22 (0) | 2013.02.23 |
[R 워드클라우드 연습] 빅데이터 워드 클라우드 (0) | 2013.02.18 |
[R 워드클라우드 연습] 트위터 데이터로 워드클라우드 만들기 (0) | 2013.02.14 |