OkBublewrap

히트맵 본문

R/학습용

히트맵

옥뽁뽁 2021. 6. 23. 02:05
bball <- read.csv("http://datasets.flowingdata.com/ppg2008.csv", header=TRUE) # NBA 2008 통계데이터
str(bball) 

'data.frame':   50 obs. of  21 variables:
 $ Name: chr  "Dwyane Wade " "LeBron James " "Kobe Bryant " "Dirk Nowitzki " ...
 $ G   : int  79 81 82 81 67 74 51 50 78 66 ...
 $ MIN : num  38.6 37.7 36.2 37.7 36.2 39 38.2 36.6 38.5 34.5 ...
 $ PTS : num  30.2 28.4 26.8 25.9 25.8 25.3 24.6 23.1 22.8 22.8 ...
 $ FGM : num  10.8 9.7 9.8 9.6 8.5 8.9 6.7 9.7 8.1 8.1 ...
 $ FGA : num  22 19.9 20.9 20 19.1 18.8 15.9 19.5 16.1 18.3 ...
 $ FGP : num  0.491 0.489 0.467 0.479 0.447 0.476 0.42 0.497 0.503 0.443 ...
 $ FTM : num  7.5 7.3 5.9 6 6 6.1 9 3.7 5.8 5.6 ...
 $ FTA : num  9.8 9.4 6.9 6.7 6.9 7.1 10.3 5 6.7 7.1 ...
 $ FTP : num  0.765 0.78 0.856 0.89 0.878 0.863 0.867 0.738 0.868 0.793 ...
 $ X3PM: num  1.1 1.6 1.4 0.8 2.7 1.3 2.3 0 0.8 1 ...
 $ X3PA: num  3.5 4.7 4.1 2.1 6.7 3.1 5.4 0.1 2.3 2.6 ...
 $ X3PP: num  0.317 0.344 0.351 0.359 0.404 0.422 0.415 0 0.364 0.371 ...
 $ ORB : num  1.1 1.3 1.1 1.1 0.7 1 0.6 3.4 0.9 1.6 ...
 $ DRB : num  3.9 6.3 4.1 7.3 4.4 5.5 3 7.5 4.7 5.2 ...
 $ TRB : num  5 7.6 5.2 8.4 5.1 6.5 3.6 11 5.5 6.8 ...
 $ AST : num  7.5 7.2 4.9 2.4 2.7 2.8 2.7 1.6 11 3.4 ...
 $ STL : num  2.2 1.7 1.5 0.8 1 1.3 1.2 0.8 2.8 1.1 ...
 $ BLK : num  1.3 1.1 0.5 0.8 1.4 0.7 0.2 1.7 0.1 0.4 ...
 $ TO  : num  3.4 3 2.6 1.9 2.5 3 2.9 1.8 3 3 ...
 $ PF  : num  2.3 1.7 2.3 2.2 3.1 1.8 2.3 2.8 2.7 3 ...

 

칼럼명 설명

G : 출전 게임수 

MIN : 출전 시간(분)

PTS : 득점 

FGM : 필드슛 성공

FGA : 필드슛 시도
FGP :  필드슛 성공률
FTM : 자유투 성공수
FTA : 자유투 시도수
FTP : 자유투 성공률
X3PM: 3점슛 성공률
X3PA: 3점슛 시도
X3PP: 3점슛 성공률
ORB : 공격리바운드
DRB : 수비리바운드
TRB : 리바운드
AST : 어시스트
STL : 스틸 

BLK : 블로킹 
TO : 종합
PF : 파울

 

row.names(bball) <- bball$Name # 변수명 Name을 행이름으로 지정
bball <- bball[,2:20]  # 변수명 Name을 제외하고 연속형 변수만 지정
bball_matrix <- data.matrix(bball) # 행렬구조로 변환
head(bball)

                G  MIN  PTS  FGM  FGA   FGP FTM FTA   FTP X3PM X3PA  X3PP ORB DRB TRB AST STL BLK  TO
Dwyane Wade    79 38.6 30.2 10.8 22.0 0.491 7.5 9.8 0.765  1.1  3.5 0.317 1.1 3.9 5.0 7.5 2.2 1.3 3.4
LeBron James   81 37.7 28.4  9.7 19.9 0.489 7.3 9.4 0.780  1.6  4.7 0.344 1.3 6.3 7.6 7.2 1.7 1.1 3.0
Kobe Bryant    82 36.2 26.8  9.8 20.9 0.467 5.9 6.9 0.856  1.4  4.1 0.351 1.1 4.1 5.2 4.9 1.5 0.5 2.6
Dirk Nowitzki  81 37.7 25.9  9.6 20.0 0.479 6.0 6.7 0.890  0.8  2.1 0.359 1.1 7.3 8.4 2.4 0.8 0.8 1.9
Danny Granger  67 36.2 25.8  8.5 19.1 0.447 6.0 6.9 0.878  2.7  6.7 0.404 0.7 4.4 5.1 2.7 1.0 1.4 2.5
Kevin Durant   74 39.0 25.3  8.9 18.8 0.476 6.1 7.1 0.863  1.3  3.1 0.422 1.0 5.5 6.5 2.8 1.3 0.7 3.0

bball_heatmap <- heatmap(bball_matrix, Rowv=NA, Colv=NA, col=heat.colors(256), 
					scale="column", margins=c(5,10)) 

비트맵

install.packages("RColorBrewer") # 색상변경
library(RColorBrewer)
bball_heatmap <- heatmap(bball_matrix, Rowv=NA, Colv=NA, col=brewer.pal(9, "Blues"), 
                               scale="column", margins=c(5,10)) 

비트맵(파란색)

색상이 진할수록 숫자가 높은 것, 연할수록 숫자가 낮다. PTS(득점수)는 Dwyane Wade이 제일 높은 것을 알 수 있다.

 

'R > 학습용' 카테고리의 다른 글

세계지도  (0) 2021.06.25
reshape2  (0) 2021.05.28
dpylr 패키지  (0) 2021.05.26
ggplot2  (0) 2021.05.25
데이터 전처리  (0) 2021.05.24