해당 포스트에서는 R에서 줄기-잎 그림(Stem-and-Leaf Plot)을 출력하는 방법을 소개합니다.
1. INTRO
줄기-잎 그림(Stem-and-Leaf plot)은 통계학에서 통계적 자료를 표(table) 형태와 그래프(Graph) 형태의 혼합된 방법으로 나타내는 시각화를 말하며, R에서 내장 함수인 stem()
을 이용해 줄기-잎 그림을 그릴 수 있습니다.
아래에서는 내장 데이터셋인 tree
데이터를 이용해 줄기-잎 그림을 시각화하는 방법을 설명 드리겠습니다.
2. 줄기-잎 그림 그리기
이번에 사용할 tree 데이터는 31그루의 벌목된 검은 벚나무의 지름, 높이, 부피 측정값을 제공이 들어있습니다.
- Girth(numeric) : Tree diameter (rather than girth, actually) in inches
- Height(numeric) : Height in ft
- Volume(numeric) : Volume of timber in cubic ft
Note
데이터셋 설명(help(tree))에 따르면, 데이터의 지름(인치)이 둘레로 잘못 표시되어 있다고 합니다.
데이터 불러오기
내장 데이터셋인 tree
를 불러오고 head()
명령어로 앞에서 6개의 데이터만 살펴보겠습니다.
# 데이터 불러오기
data("trees")
# 앞에서 6줄 확인
head(trees)
Girth Height Volume
1 8.3 70 10.3
2 8.6 65 10.3
3 8.8 63 10.2
4 10.5 72 16.4
5 10.7 81 18.8
6 10.8 83 19.7
줄기-잎 그림(Stem-and-Leaf plot)
줄기-잎 그림은 stem()
함수로 그릴 수 있습니다. 변수 중 Volume
의 경우 관찰값이 모두 두 자리 숫자인데, '|
'의 왼쪽에 첫 번째 자릿수를 놓고 '|
'의 오른쪽에 두 번째 자릿수들을 나열하여 어떤 값들이 들어 있는지 확인할 수 있습니다.
R 코드 및 출력
stem(trees$Volume)
The decimal point is 1 digit(s) to the right of the |
1 | 00066899
2 | 00111234567
3 | 24568
4 | 3
5 | 12568
6 |
7 | 7
결과 해석
첫 번째 줄(1 | 00066899
)을 예로 들면 '|
'의 왼쪽이 1이므로 이 값들의 첫째 자리는 '1'이고, '|
' 오른쪽에 숫자들은 둘째 자릿수가 무엇인지 알려줍니다. 0이 셋, 6이 둘, 8이 하나, 9가 둘이므로, 10이 셋, 16이 둘, 18이 하나, 19가 둘임을 알 수 있습니다.
줄기(stem) 숫자들의 범위를 변경하고 싶다면?
만약, 줄기(stem) 숫자들의 범위(range)를 변경하고 싶다면 scale
옵션을 활용하시면 됩니다.
stem(trees$Volume, scale = 0.5)
The decimal point is 1 digit(s) to the right of the |
0 | 00066899
2 | 0011123456724568
4 | 312568
6 | 7
stem(trees$Volume, scale = 2)
The decimal point is 1 digit(s) to the right of the |
1 | 000
1 | 66899
2 | 00111234
2 | 567
3 | 24
3 | 568
4 | 3
4 |
5 | 12
5 | 568
6 |
6 |
7 |
7 | 7
3. 마무리
이번 포스트에서는 R에서 줄기-잎 그림(Stem-and-Leaf plot)을 그리는 방법에 대해 소개하였습니다.
줄기-잎 그림은 히스토그램(Histogram) 차트을 그리고 실제 데이터 값의 분포를 확인하는 후속 작업으로 많이 사용됩니다. 추후 히스토그램에 대한 내용도 다루도록 하겠습니다.