4.2 Pacote lubridate para datas

library(lubridate)

Originalmente, o R é ruim para trabalhar com datas, o que causa frustração e perda de tempo nas análises. O pacote lubridate foi criado para simplificar ao máximo a leitura de datas e extração de informações dessas datas.

A função mais importante para leitura de dados no lubridate é a ymd. Essa função serve para ler qualquer data de uma string no formato YYYY-MM-DD. Essa função é útil pois funciona com qualquer separador entre os elementos da data e também porque temos uma função para cada formato (mdy, dmy, dym, myd, ydm).

4.2.1 Exercícios

  1. Leia January 20, 2018 com o lubridate.
  2. O que acontece se você rodar ymd("2017-02-29")? e ymd("2016-02-29")?
  3. Encontre um caso em que o lubridate não funciona como você gostaria.

Outras funções importantes

  • ymd_hms: lê datas e horários, generalizando ymd.
  • year, month, day, quarter, weekday, week: extraem componentes da data.
  • years, months, days: adicionam tempos a uma data, ajudando a criar vetores de datas. Por exemplo
ymd('2015-01-01') + months(0:11)
#>  [1] "2015-01-01" "2015-02-01" "2015-03-01" "2015-04-01" "2015-05-01"
#>  [6] "2015-06-01" "2015-07-01" "2015-08-01" "2015-09-01" "2015-10-01"
#> [11] "2015-11-01" "2015-12-01"
  • floor_date e ceiling_date: arredonda datas para uma unidade de interesse. Útil para agregar dados diários por semana, mês, trimestre etc.
c("2017-04-10", "2017-08-08", "2017-02-28") %>% 
  ymd() %>% 
  floor_date("months")
#> [1] "2017-04-01" "2017-08-01" "2017-02-01"

Outro exemplo:

c("2017-04-10", "2017-08-08", "2017-02-28") %>% 
  ymd() %>% 
  ceiling_date("half year")
#> [1] "2017-07-01" "2018-01-01" "2017-07-01"

Mais informações: