1. 시각화를 사용했을 때 나타나는 효과
- 직관(insight)를 얻을 수 있다.
- 핵심을 명확하게 이해할 수 있다.
- 평균적인 경향과 더불어 이상값(outlier)도 발견할 수 있다.
- 데이터에서 문제를 빨리 찾아낼 수 있다.
2. gapminder 데이터의 직관적 이해
- 요약 통계를 추출하는 과정 없이도 시각화를 통해 데이터를 직관적으로 이해할 수 있다.
- 실습) gapminder 데이터에서 1인당 GDP에 따른 기대 수명을 대륙별로 살펴본다.(로그 스케일 사용)
plot(log10(gapminder$gdpPercap), gapminder$lifeExp, col = gapminder$continent)
legend("bottomright", legend = levels((gapminder$continent)),
pch = c(1:length(levels(gapminder$continent))),
col = c(1:length(levels(y$continent))))
- 동일한 실습을 시각화 전용 라이브러리인 ggplot2를 사용해서 해본다.
library(ggplot2)
ggplot(gapminder, aes(x = gdpPercap, y = lifeExp,
col = continent, size = pop)) +
geom_point() + scale_x_log10()
- 범례 표시를 위해 새로운 함수를 호출하고 변수를 다시 입력할 필요가 없다.
- size = pop을 추가하면 플롯 마커의 프기가 각 국가의 인구에 비례하도록 지정할 수 있다.
- 마커들이 중첩되어 가려지는 문제는 마커의 투명도를 설정해 해결할 수 있다.
- geom_point에 alpha = 0.5 추가.
library(ggplot2)
ggplot(gapminder, aes(x = gdpPercap, y = lifeExp,
col = continent, size = pop)) +
geom_point(alpha = 0.5) + scale_x_log10()
- ggplot2의 facet_wrap 함수를 이용하면 관측 연도를 구분하여 표시하는 것 또한 가능하다.
ggplot(gapminder, aes(x = gdpPercap, y = lifeExp,
col = continent, size = pop)) +
geom_point(alpha = 0.5) + scale_x_log10() + facet_wrap(~year)
728x90
'Programing > R' 카테고리의 다른 글
[R] 베이스 R을 이용한 데이터 시각화 (0) | 2021.10.22 |
---|---|
[R] 데이터 시각화의 기본 기능_데이터를 여러 관점에서 보게 함 (0) | 2021.10.22 |
[R] 데이터 시각화란? (0) | 2021.10.19 |
[R] 데이터 구조 변경 (0) | 2021.10.18 |
[R] 모델링을 위한 가공 (0) | 2021.10.18 |
댓글