시작하기무료로 시작하기

시각화를 위한 추출

datetime에서 구성 요소를 추출하는 기능은 데이터를 탐색할 때 특히 유용해요. 이 장의 앞부분에서 오클랜드의 일별 날씨 데이터를 불러오고, 10년간의 일별 최고 기온에 대한 시계열 그래프를 만들었죠. 그 그래프는 10년 전체를 훑어보는 데는 좋지만, 해마다 반복되는 패턴은 보기 어렵습니다.

이번 연습 문제에서는 날짜의 구성 요소를 활용해 1년 동안의 최고 기온 패턴을 탐색해 볼 거예요. 먼저 추출한 값을 담을 새 열을 만든 다음, 몇 가지 그래프에 활용해 보겠습니다.

이 연습은 강의의 일부입니다

R에서 날짜와 시간 다루기

강의 보기

연습 안내

  • mutate()를 사용해 year, yday, month라는 세 개의 새 열을 만드세요. 각각 date 열에서 같은 구성 요소를 담도록 하세요. 달(month)은 이름으로 라벨을 지정하는 것도 잊지 마세요.
  • x축에는 yday, y축에는 max_temp를 두고, 선은 year별로 그룹화한 그래프를 그리세요. 이 플롯에서는 각 연도가 하나의 선이며, x축은 1월 1일부터 12월 31일까지 이어집니다.
  • 다른 관점에서 보려면, ggridges 패키지의 geom_density_ridges()를 사용해 x축에 max_temp, y축에 month를 둔 ridgeline plot(이전 명칭: joyplot)을 만드세요.

실습형 인터랙티브 연습

이 예제를 이 샘플 코드를 완성하여 풀어보세요.

library(ggplot2)
library(dplyr)
library(ggridges)

# Add columns for year, yday and month
akl_daily <- akl_daily %>%
  mutate(
    ___ = ___(date),
    ___ = ___(date),
    ___ = ___(date, ___))

# Plot max_temp by yday for all years
ggplot(akl_daily, aes(x = ___, y = ___)) +
  geom_line(aes(group = ___), alpha = 0.5)

# Examine distribution of max_temp by month
ggplot(akl_daily, aes(x = ___, y = ___, height = ..density..)) +
  geom_density_ridges(stat = "density")
코드 편집 및 실행