Come generare una sequenza di date con lubrificato in r


È possibile utilizzare la seguente sintassi di base per generare una sequenza di date utilizzando il pacchetto lubridate in R:

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

Questo particolare esempio genererà una sequenza di date dal 1/1/2022 al 31/10/2022 a intervalli di una settimana .

Per utilizzare un intervallo diverso, è sufficiente sostituire la settimana con un’altra unità di tempo come giorno, mese, trimestre, anno, ecc.

Gli esempi seguenti mostrano come utilizzare nella pratica questa sintassi per generare una sequenza di date.

Esempio 1: generare una sequenza di date per giorni

Il codice seguente mostra come generare una sequenza di date dal 01/01/2022 al 15/02/2022 al giorno:

 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"

Il risultato è una sequenza di 46 date dal 1/1/2022 al 25/02/2022.

Nota : invece di inserire 1 giorno , è possibile inserire anche solo il giorno .

Esempio 2: generare una sequenza di date per settimane

Il codice seguente mostra come generare una sequenza di date dal 01/01/2022 al 15/02/2022 a settimana:

 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"

Il risultato è una sequenza di 7 date dal 1/1/2022 al 25/02/2022 a settimana.

Potremmo anche utilizzare il seguente codice per generare una sequenza di date dal 01/01/2022 al 02/25/2022 a intervalli di 2 settimane :

 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"

Il risultato è una sequenza di 4 date che vanno dal 01/01/2022 al 25/02/2022 con un intervallo di 2 settimane.

Esempio 3: generare una sequenza di date al mese

Il codice seguente mostra come generare una sequenza di date dal 01/01/2022 al 31/10/2022 al mese:

 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"

Il risultato è una sequenza di 10 date dal 01/01/2022 al 31/10/02/2022 al mese.

Tieni presente che in questo tutorial abbiamo condiviso solo alcuni esempi su come generare una sequenza di date utilizzando il pacchetto lubridate .

Sentiti libero di modificare la data di inizio, la data di fine e l’intervallo per creare la sequenza di date specifica che desideri.

Risorse addizionali

I seguenti tutorial spiegano come eseguire altre attività comuni in R:

Come convertire una data in numerica in R
Come estrarre il mese dalla data in R
Come aggiungere e sottrarre mesi a una data in R

Aggiungi un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *