Data visualization/데이터시각화(R)

데이터시각화 R_ggplot2_tips

뉴욕킴 2023. 9. 4. 01:31
tips data : 웨이터가 자신이 일하는 레스토랑에서 수개월 동안 일을 하면서 tip 관련하여 모은 자료

 

1. 라이브러리 설치

install.packages("reshape2")

2. 라이브러리 불러오기 

library(reshape2)

3. 데이터 확인

head(tips)
 total_bill  tip    sex smoker day   time size
1      16.99 1.01 Female     No Sun Dinner    2
2      10.34 1.66   Male     No Sun Dinner    3
3      21.01 3.50   Male     No Sun Dinner    3
4      23.68 3.31   Male     No Sun Dinner    2
5      24.59 3.61 Female     No Sun Dinner    4
6      25.29 4.71   Male     No Sun Dinner    4
tail(tips)
total_bill  tip    sex smoker  day   time size
239      35.83 4.67 Female     No  Sat Dinner    3
240      29.03 5.92   Male     No  Sat Dinner    3
241      27.18 2.00 Female    Yes  Sat Dinner    2
242      22.67 2.00   Male    Yes  Sat Dinner    2
243      17.82 1.75   Male     No  Sat Dinner    2
244      18.78 3.00 Female     No Thur Dinner    2
dim(tips)
[1] 244   7

* 각각의 변수 확인 : summary 

summary(tips)
total_bill         tip             sex     
 Min.   : 3.07   Min.   : 1.000   Female: 87  
 1st Qu.:13.35   1st Qu.: 2.000   Male  :157  
 Median :17.80   Median : 2.900               
 Mean   :19.79   Mean   : 2.998               
 3rd Qu.:24.13   3rd Qu.: 3.562               
 Max.   :50.81   Max.   :10.000               
 smoker      day         time          size     
 No :151   Fri :19   Dinner:176   Min.   :1.00  
 Yes: 93   Sat :87   Lunch : 68   1st Qu.:2.00  
           Sun :76                Median :2.00  
           Thur:62                Mean   :2.57  
                                  3rd Qu.:3.00  
                                  Max.   :6.00 
  • 왼쪽으로 치우진, 오른쪽으로 긴 꼬리의 형태임을 알 수 있음
ggplot(tips, aes(x = total_bill)) + geom_histogram()

summary(tips$tip)
  Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
  1.000   2.000   2.900   2.998   3.562  10.000 
  •  1$ 단위로 그림 그리기 : binwidth = 1
ggplot(tips,aes(tip))+geom_histogram(binwidth = 1)

  • 히스토그램 처럼 그리고 끝의 점을 이어주는 함수: geom_freqploy() -> 여러개의 분포를 확인 가능 
ggplot(tips,aes(tip))+geom_freqpoly()

 

  • 남녀 구분값 확인
ggplot(tips,aes(tip, color=sex))+geom_freqpoly()

ggplot(tips,aes(tip))+geom_density()