필터링과 요약을 위한 추출
구성 요소를 추출하는 또 다른 이유는 관측값을 필터링하거나 요약을 만드는 데 도움이 되기 때문이에요. 예를 들어 주말을 제외하고 평일 관측값만 보고 싶다면 요일을 추출한 뒤 주말을 걸러낼 수 있어요. 예: wday(date) %in% 2:6.
이전 연습 문제에서 1월, 2월, 3월이 오클랜드를 방문하기에 따뜻한 기온으로 아주 좋은 시기라는 것을 확인했는데요, 비옷이 필요할까요?
이번 연습 문제에서 확인해 봅시다! 시간 단위 데이터를 사용해 각 달마다 낮 시간 동안 비가 한 번이라도 온 날이 며칠이었는지 계산할 거예요.
이 연습은 강의의 일부입니다
R에서 날짜와 시간 다루기
연습 안내
datetime에서 관측의 시(hour)와 월(month)을 새로운 열로 만들어 주세요. 월에는 라벨을 붙이세요.- 시(hour)가
8이상22이하인 낮 시간 관측만 필터링하세요. - 먼저
month로, 그다음date로 그룹화한 뒤rainy열에any()를 사용해 요약하세요. 이렇게 하면 하루마다 하나의 값이 나옵니다 any_rain을 합산하여 다시 요약하세요. 이렇게 하면 한 달마다 하나의 값이 나옵니다
실습형 인터랙티브 연습
이 예제를 이 샘플 코드를 완성하여 풀어보세요.
# Create new columns hour, month and rainy
akl_hourly <- akl_hourly %>%
mutate(
___ = ___(datetime),
___ = ___(datetime, ___),
rainy = weather == "Precipitation"
)
# Filter for hours between 8am and 10pm (inclusive)
akl_day <- akl_hourly %>%
filter(___, ___)
# Summarise for each date if there is any rain
rainy_days <- akl_day %>%
group_by(___, ___) %>%
summarise(
any_rain = ___(rainy)
)
# Summarise for each month, the number of days with rain
rainy_days %>%
summarise(
days_rainy = ___(any_rain)
)