Come ottenere il numero della settimana dalle date in r (con esempi)


È possibile utilizzare i seguenti metodi per ottenere il numero della settimana da una data in R:

Metodo 1: ottieni il numero della settimana utilizzando Base R

 strftime(df$date_column, format = ' %V ')

Metodo 2: ottieni il numero della settimana utilizzando il pacchetto Lubrificante

 library (lubridate)

isoweek(ymd(df$ date_column ))

Gli esempi seguenti mostrano come utilizzare ciascun metodo con il seguente frame di dati in R:

 #create data frame
df <- data. frame (date=as. Date (c('1/8/2022', '1/9/2022', '2/10/2022', '2/15/2022',
                                '3/5/2022', '3/22/2022', '3/27/2022'), '%m/%d/%Y'),
                 sales=c(8, 14, 22, 23, 16, 17, 23))

#view data frame
df

        dirty date
1 2022-01-08 8
2 2022-01-09 14
3 2022-02-10 22
4 2022-02-15 23
5 2022-03-05 16
6 2022-03-22 17
7 2022-03-27 23

Esempio 1: ottenere il numero della settimana utilizzando Base R

Il codice seguente mostra come utilizzare la funzione strftime() per ottenere il numero della settimana dalla colonna della data nel frame di dati:

 #add column to show week number
df$week_num <- strftime(df$date, format = " %V ")

#view updated data frame
df

        date sales week_num
1 2022-01-08 8 01
2 2022-01-09 14 01
3 2022-02-10 22 06
4 2022-02-15 23 07
5 2022-03-05 16 09
6 2022-03-22 17 12
7 2022-03-27 23 12

La nuova colonna denominata week_num visualizza il numero della settimana per il valore nella colonna della data .

Nota : secondo la documentazione, %V% calcola i numeri delle date in questo modo: “il numero della settimana dell’anno (lunedì come primo giorno della settimana) come decimale [01,53].” Se la settimana contenente il 1 gennaio ha quattro o più giorni nel nuovo anno, allora è considerata la settimana 1. Altrimenti, è l’ultima settimana dell’anno precedente e la settimana successiva è la settimana 1.”

Esempio 2: ottenere il numero della settimana utilizzando il pacchetto Lubrificate

Il codice seguente mostra come utilizzare la funzione isoweek() del pacchetto lubridate per ottenere il numero della settimana dalla colonna della data nel frame dati:

 #add column to show week number
df$week_num <- isoweek(ymd(df$date))

#view updated data frame
df

        date sales week_num
1 2022-01-08 8 1
2 2022-01-09 14 1
3 2022-02-10 22 6
4 2022-02-15 23 7
5 2022-03-05 16 9
6 2022-03-22 17 12
7 2022-03-27 23 12

La nuova colonna denominata week_num visualizza il numero della settimana per il valore nella colonna della data .

Tieni presente che i numeri della settimana corrispondono a quelli calcolati utilizzando la funzione strftime() nell’esempio precedente.

Risorse addizionali

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

Come raggruppare i dati per mese inR
Come estrarre l’anno dalla data in R
Come estrarre il mese dalla data in R
Come ordinare un frame di dati per data in R

Aggiungi un commento

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