Extraindo para filtrar e resumir
Outro motivo para extrair componentes é ajudar a filtrar observações ou criar resumos. Por exemplo, se você só se interessa por observações feitas em dias de semana (ou seja, não aos fins de semana), pode extrair os dias da semana e então filtrar os fins de semana, por exemplo, wday(date) %in% 2:6.
No último exercício, você viu que janeiro, fevereiro e março são ótimas épocas para visitar Auckland por causa das temperaturas mais altas, mas será que você vai precisar de capa de chuva?
Neste exercício, você vai descobrir! Você usará os dados horários para calcular em quantos dias de cada mês houve qualquer quantidade de chuva durante o dia.
Este exercício faz parte do curso
Trabalhando com datas e horários no R
Instruções do exercício
- Crie novas colunas para a hora e o mês da observação a partir de
datetime. Certifique-se de rotular o mês. - Filtre apenas as observações diurnas, em que a hora é maior ou igual a
8e menor ou igual a22. - Agrupe as observações primeiro por
month, depois pordate, e faça o resumo usandoany()na colunarainy. Isso resulta em um valor por dia - Resuma novamente somando
any_rain. Isso resulta em um valor por mês
Exercício interativo prático
Experimente este exercício completando este código de exemplo.
# 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)
)