4.3 일변량 범주형 데이타 그래프

범주형의 변수 1개에 대한 그래프를 그려 보겠습니다.

사용하는 변수는 Cars93$Cylinders 컬럼 한 개(일변량)로, 이 변수는 6개의 수준을 갖는 Factor 형 변수 즉, 범주형 변수임을 알 수 있습니다.

이 절에서의 일변량 범주형 데이터에 대하여 다음의 그래프를 그려 보기로 한다.

특히 여기에서 사용되는 함수들의 첫 번째 인수는 모두 table() 함수를 이용한 도수분포표가 된다는 것을 주의하기 바랍니다.

4.3.1 막대 그래프

막대 그래프(bar graph)바 차트(bar chart), 바 그래프(bar graph) 등으로도 불리며, barplot() 함수를 이용하여 막대 그래프를 그릴 수 있습니다.

막대 그래프는 명목형 변수 X를 전체 데이터의 값에 비례하여 높이갯수를 나타내는 직사각형의 막대로 표현하는 차트나 그래프를 말합니다. 막대는 수직 또는 수평으로 그릴 수 있습니다.

barplot() 함수의 첫 번째 인수는 명목형 변수의 도수분포표입니다. 변수의 도수분포표는 table() 함수로 구할 수 있습니다.

library(MASS)

##-------- plot for one variable, categorical data 
# bar plot : barplot() 
table_cyl <- table(Cars93$Cylinders)                # Cylinder 컬럼의 도수분포료
barplot(table_cyl, main = "bar plot : barplot()")
일변량 범주형 데이터 그래프 : 막대 그래프

Figure 4.13: 일변량 범주형 데이터 그래프 : 막대 그래프

자세한 사용방법은 ? barplot으로 확인할 수 있습니다. [참고 : 바차트]

Go Top

4.3.2 클리브랜드 점 그래프

클리브랜드 점 그래프(Cleveland dot plot)는 Cleveland 라는 사람이 제안한 형식의 그래프로 Base Graphics 패키지의 dotchart() 함수를 이용하여 그릴 수 있습니다.

이 그래프는 x축을 연속형 변수로, 그리고 y축을 명목형 변수로 표현한다. 그런데, 이 그래프에서 주요 변수는 Y축을 이루는 명목형 변수입니다.

앞에서 살펴본 막대 그래프의 X축과 Y축을 바꿔 놓고, 그림을 막대가 아닌 점으로 표현한 것이 클리브랜드 점 그래프입니다.

Y축의 변수를 reorder() 함수 또는 sort() 함수를 이용하여 발생도수의 오름차순/내림차순으로 정렬할 수 있습니다.

library(MASS)

# cleveland dot plot : dotchart() 

# frequency table 
table_cyl <- table(Cars93$Cylinders) 

# names for label 
Cylinders <- names(table_cyl)

dotchart(as.numeric(table_cyl), 
         labels = Cylinders, main = "cleveland dot plot")
일변량 범주형 데이터 그래프 : 클리브랜드 점 그래프

Figure 4.14: 일변량 범주형 데이터 그래프 : 클리브랜드 점 그래프

  • as.numeric(table_cyl)은 도수분포표의 발생 도수만을 벡터로 추출합니다.

[참고사항]

Cars93$Cylinders 컬럼의 도수분포표를 sort() 함수를 이용하여 발생 도수를 오름차순으로 정렬하고, 이를 인수로 하여 클리브랜드 점 그래프를 그려 보겠습니다.

library(MASS)

# cleveland dot plot : dotchart() 

# frequency table 
table_cyl_inc <- sort(table(Cars93$Cylinders))   # 발생 도수의 오름차순 정렬

# names for label 
Cylinders <- names(table_cyl_inc)

dotchart(as.numeric(table_cyl_inc), 
         labels = Cylinders, main = "cleveland dot plot")
일변량 범주형 데이터 그래프 : 클리브랜드 점 그래프 (Sort)

Figure 4.15: 일변량 범주형 데이터 그래프 : 클리브랜드 점 그래프 (Sort)

  • Y축은 순서가 중요하지 않은 범주형 데이터이기 때문에 X축의 발생 도수로 정렬하는 것도 의미가 있습니다.

자세한 사용방법은 ? dotchart로 확인할 수 있습니다.

Go Top

4.3.3 파이 차트

파이 차트는 도수분포표를 비율로 나타낼 때 사용합니다. 전체를 100%라고 했을 때, 각각이 차지하는 비율을 한 눈에 볼 수 있게 시각화하는 것입니다.

역시 이 파이 차트를 그릴 떄도 기본적으로 범주형 변수를 인수로 하여 table() 함수로 구한 도수분포표가 됩니다.

library(MASS)

# pie chart : pie() 
table_cyl <- table(Cars93$Cylinders) 
# frequency table 
Cylinders <- names(table_cyl) 
# names for label 
  
pie(table_cyl, labels = Cylinders, main = "pie chart")
일변량 범주형 데이터 그래프 : 파이 차트

Figure 4.16: 일변량 범주형 데이터 그래프 : 파이 차트

자세한 사용방법은 ? pie로 확인할 수 있습니다. [참고 : 파이차트]

Go Top