Como gerar uma sequência de datas com lubrificação em r


Você pode usar a seguinte sintaxe básica para gerar uma sequência de datas usando o pacote lubridate em R:

 seq(ymd(' 2022-01-01 '), ymd(' 2022-10-31 '), by=' 1 week ')

Este exemplo específico irá gerar uma sequência de datas de 01/01/2022 a 31/10/2022 em intervalos de uma semana .

Para usar um intervalo diferente, basta substituir semana por outra unidade de tempo, como dia, mês, trimestre, ano, etc.

Os exemplos a seguir mostram como usar essa sintaxe para gerar uma sequência de datas na prática.

Exemplo 1: Gere uma sequência de datas por dias

O código a seguir mostra como gerar uma sequência de datas de 01/01/2022 a 15/02/2022 por dia:

 library (lubridate)

#generate sequence of dates from 1/1/2022 to 2/15/2022 by day
seq(ymd(' 2022-01-01 '), ymd(' 2022-02-15 '), by=' 1 day ')

 [1] "2022-01-01" "2022-01-02" "2022-01-03" "2022-01-04" "2022-01-05"
 [6] "2022-01-06" "2022-01-07" "2022-01-08" "2022-01-09" "2022-01-10"
[11] "2022-01-11" "2022-01-12" "2022-01-13" "2022-01-14" "2022-01-15"
[16] "2022-01-16" "2022-01-17" "2022-01-18" "2022-01-19" "2022-01-20"
[21] "2022-01-21" "2022-01-22" "2022-01-23" "2022-01-24" "2022-01-25"
[26] "2022-01-26" "2022-01-27" "2022-01-28" "2022-01-29" "2022-01-30"
[31] "2022-01-31" "2022-02-01" "2022-02-02" "2022-02-03" "2022-02-04"
[36] "2022-02-05" "2022-02-06" "2022-02-07" "2022-02-08" "2022-02-09"
[41] "2022-02-10" "2022-02-11" "2022-02-12" "2022-02-13" "2022-02-14"
[46] "2022-02-15"

O resultado é uma sequência de 46 datas de 01/01/2022 a 25/02/2022.

Nota : Em vez de inserir 1 dia , você também pode inserir apenas o dia .

Exemplo 2: gere uma sequência de datas por semanas

O código a seguir mostra como gerar uma sequência de datas de 01/01/2022 a 15/02/2022 por semana:

 library (lubridate)

#generate sequence of dates from 1/1/2022 to 2/15/2022 by week
seq(ymd(' 2022-01-01 '), ymd(' 2022-02-15 '), by=' 1 week ')

[1] "2022-01-01" "2022-01-08" "2022-01-15" "2022-01-22" "2022-01-29"
[6] "2022-02-05" "2022-02-12"

O resultado é uma sequência de 7 datas de 01/01/2022 a 25/02/2022 por semana.

Também poderíamos usar o seguinte código para gerar uma sequência de datas de 01/01/2022 a 25/02/2022 em intervalos de 2 semanas :

 library (lubridate)

#generate sequence of dates from 1/1/2022 to 2/15/2022 by 2 weeks
seq(ymd(' 2022-01-01 '), ymd(' 2022-02-15 '), by=' 2 week ')

[1] "2022-01-01" "2022-01-15" "2022-01-29" "2022-02-12"

O resultado é uma sequência de 4 datas que vão de 01/01/2022 a 25/02/2022 com intervalo de 2 semanas.

Exemplo 3: Gere uma sequência de datas por mês

O código a seguir mostra como gerar uma sequência de datas de 01/01/2022 a 31/10/2022 por mês:

 library (lubridate)

#generate sequence of dates from 1/1/2022 to 10/31/2022 by month
seq(ymd(' 2022-01-01 '), ymd(' 2022-02-15 '), by=' 1 month ')

 [1] "2022-01-01" "2022-02-01" "2022-03-01" "2022-04-01" "2022-05-01"
 [6] "2022-06-01" "2022-07-01" "2022-08-01" "2022-09-01" "2022-10-01"

O resultado é uma sequência de 10 datas de 01/01/2022 a 31/10/02/2022 por mês.

Observe que neste tutorial compartilhamos apenas alguns exemplos de como gerar uma sequência de datas usando o pacote lubridate .

Sinta-se à vontade para alterar a data de início, a data de término e o intervalo para criar a sequência de datas específica desejada.

Recursos adicionais

Os tutoriais a seguir explicam como realizar outras tarefas comuns em R:

Como converter uma data em numérico em R
Como extrair mês da data em R
Como adicionar e subtrair meses a uma data em R

Add a Comment

O seu endereço de email não será publicado. Campos obrigatórios marcados com *