Come estrarre il mese dalla data in r (con esempi)


Esistono due modi per estrarre rapidamente il mese da una data in R:

Metodo 1: utilizzare format()

 df$month <- format( as.Date (df$date, format=" %d/%m/%Y ")," %m ")

Metodo 2: utilizzare il pacchetto di lubrificazione

 library (lubridate)

df$month <- month( mdy (df$date))

Questo tutorial mostra un esempio di come utilizzare ciascuno di questi metodi nella pratica.

Metodo 1: estrai il mese dalla data utilizzando format()

Il codice seguente mostra come estrarre il mese da una data utilizzando la funzione format() combinata con l’argomento “%m” :

 #create data frame
df <- data. frame (date=c("01/01/2021", "01/04/2021" , "01/09/2021"),
                  sales=c(34, 36, 44))

#view data frame
df

        dirty date
1 01/01/2021 34
2 01/04/2021 36
3 01/09/2021 44

#create new variable that contains month
df$month <- format( as.Date (df$date, format=" %d/%m/%Y ")," %m ")

#view updated data frame
df

        date sales month
1 01/01/2021 34 01
2 01/04/2021 36 04
3 01/09/2021 44 09

Tieni presente che questa funzione format() funziona con una varietà di formati di data. Devi semplicemente specificare il formato:

 #create data frame
df <- data. frame (date=c("2021-01-01", "2021-01-04", "2021-01-09"),
                  sales=c(34, 36, 44))

#view data frame
df

        dirty date
1 2021-01-01 34
2 2021-01-04 36
3 2021-01-09 44

#create new variable that contains month
df$month<- format( as.Date (df$date, format=" %Y-%m-%d ")," %m ")

#view updated data frame
df

        date sales month
1 2021-01-01 34 01
2 2021-01-04 36 01
3 2021-01-09 44 01

Nota : puoi anche utilizzare %B per estrarre il mese come nome stringa (Gennaio) anziché come valore numerico (01).

Metodo 2: estrarre il mese dalla data utilizzando Lubridate

Possiamo anche utilizzare le funzioni del pacchetto lubrificante per estrarre rapidamente il mese da una data:

 library (lubridate)

#create data frame
df <- data. frame (date=c("01/01/2021", "01/04/2021" , "01/09/2021"),
                  sales=c(34, 36, 44))

#view data frame
df

        dirty dates
1 01/01/2021 34
2 01/04/2021 36
3 01/09/2021 44

#create new variable that contains month
df$month<- month( mdy (df$date))

#view updated data frame
df

        date sales month
1 01/01/2021 34 1
2 01/04/2021 36 1
3 01/09/2021 44 1

Lubridate funziona anche con una varietà di formati di data. Devi semplicemente specificare il formato:

 #create data frame
df <- data. frame (date=c("2021-01-01", "2021-01-04", "2021-01-09"),
                  sales=c(34, 36, 44))

#view data frame
df

        dirty date
1 2021-01-01 34
2 2021-01-04 36
3 2021-01-09 44

#create new variable that contains month
df$month <- month( ymd (df$date))

#view updated data frame
df

        date sales month
1 2021-01-01 34 1
2 2021-01-04 36 1
3 2021-01-09 44 1

Risorse addizionali

I seguenti tutorial spiegano come eseguire altre operazioni comuni in R:

Come estrarre l’anno dalla data in R
Come calcolare il numero di mesi tra le date in R

Aggiungi un commento

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