그래프 만들기
데이터를 보기 쉽게 그림으로 표현한 것을 '그래프' 라고 합니다. 데이터의 원 자료나 통계표 보다는 시각화된 그래프가 의미와 특징을 더 쉽게 파악할 수 있습니다.
우리는 R의 ggplot2 패키지를 사용하여 그래프를 그리는 방법을 알아보겠습니다.
ggplot2
ggplot2는 레이어 구조의 문법 체계를 가지고 있습니다. 배경을 만들고, 그 위에 그래프를 그리고, 그래프의 축 범위, 색, 표식을 추가하는 순서로 그래프가 만들어지게 됩니다.
ggplot2를 사용하려면 당연히 ggplot2 패키지를 불러와야만 합니다.
library(ggplot2)
1. 산점도
레이어 구조 순서로 산점도를 만듭니다.
# 배경 만들기
ggplot(data = mpg, aes(x = displ, y = hwy)) +
geom_point() # 배경에 산점도 추가
그래프 설정을 변경하는 코드를 추가하여 축 범위를 설정하여 보겠습니다.
# 배경 만들기
ggplot(data = mpg, aes(x = displ, y = hwy)) +
geom_point() + # 배경에 산점도 추가
xlim (3,6) +
ylim (10, 30)
2. 막대 그래프
집단별 평균표를 만들어서 막대 그래프를 그릴 수 있습니다.
library(ggplot2)
library(dplyr)
df_mpg <- mpg %>%
group_by(drv) %>%
summarise(mean_hwy = mean(hwy))
ggplot(data = df_mpg, aes(x = drv, y = mean_hwy)) + geom_col()
크기 순으로 정렬하려면 reorder()
함수를 사용하면 막대를 크기 순으로 정렬할 수 있습니다.
ggplot(data = df_mpg, aes(x = reorder(drv, -mean_hwy), y = mean_hwy)) + geom_col()
빈도 막대 그래프 또한 그릴 수 있습니다. geom_bar()
를 사용하면 됩니다.
ggplot(data = mpg, aes(x = drv)) + geom_bar()
연속 변수를 x에 지정하면 값의 분포를 파악할 수 있습니다.
ggplot(data = mpg, aes(x = hwy)) + geom_bar()
3. 선 그래프
데이터를 선으로 표현한 그래프를 선 그래프라고 합니다. 주로 시간에 따라 달라지는 데이터를 표현할 때 선 그래프를 이용합니다.
ggplot(data = economics, aes(x = data, y =umemploy)) + geom_line()
4. 상자 그림 (Boxplot)
상자그림은 데이터의 분포를 직사각형의 상자 모양으로 표현한 그래프 입니다. qplot 에서의 상자그림은 한 변수의 분포만 볼 수 있었지만 ggplot2 의 상자그림은 여러 변수를 비교하여 볼 수 있습니다.
ggplot(data = mpg, aes(x = drv, y = hwy)) + geom_boxplot()
// 참고자료
김영우, 『쉽게 배우는 R 데이터 분석』, 이지스 퍼블리싱, 2019
이영호, "확률과통계" 가천대학교, 2019
'Programming > R' 카테고리의 다른 글
WordCloud2 (0) | 2019.05.27 |
---|---|
텍스트 마이닝 - KoNLP (0) | 2019.05.20 |
데이터 정제하기 (데이터 클린징) (0) | 2019.04.15 |
데이터 전처리 (0) | 2019.04.14 |
변수 조작하기 (0) | 2019.04.10 |