Come convertire una data in numerica in r (con esempi)
Esistono due metodi che puoi utilizzare per convertire i valori di data in valori numerici in R:
Metodo 1: utilizzare as.numeric()
as. numeric (my_date)
Ciò restituirà il numero di secondi trascorsi tra l’oggetto data e l’1/1/1970.
Metodo 2: utilizzare le funzioni del pacchetto di lubrificazione
library (lubridate) #get seconds value in date object second(my_date) #get minutes value in date object minute(my_date) ... #get year value in date object year(my_date)
Ciò restituirà il valore di secondi, minuti, anni, ecc. del tuo oggetto data.
Gli esempi seguenti mostrano come utilizzare ciascun metodo nella pratica.
Metodo 1: utilizzare as.numeric()
Il codice seguente mostra come convertire un oggetto data in numerico utilizzando la funzione as.numeric() :
#create date object
my_date <- as. POSIXct ("10/14/2021 5:35:00 PM", format="%m/%d/%Y %H:%M:%S %p")
#view date object
my_date
[1] "2021-10-14 05:35:00 UTC"
#convert date object to number of seconds since 1/1/1970
as. numeric (my_date)
[1] 1634189700
#convert date object to number of days since 1/1/1970
as. numeric (my_date) / 86400
[1] 18914.23
#convert date object to number of years since 1/1/1970
as. numeric (my_date) / 86400 / 365
[1] 51.81982
In base al risultato possiamo vedere:
- C’è una differenza di 1.634.189.700 secondi tra il nostro oggetto data e l’1/1/1970.
- C’è una differenza di 18.914,23 giorni tra la nostra data e l’1/1/1970.
- C’è una differenza di 51,81982 anni tra il nostro oggetto data e l’1/1/1970.
Metodo 2: utilizzare le funzioni del pacchetto di lubrificazione
Il codice seguente mostra come convertire un oggetto data in numerico utilizzando le funzioni nel pacchetto lubridate in R:
library (lubridate)
#create date object
my_date <- as. POSIXct ("10/14/2021 5:35:00 PM", format="%m/%d/%Y %H:%M:%S %p")
#view date object
my_date
[1] "2021-10-14 05:35:00 UTC"
#extract various numerical values from date object
second(my_date)
[1] 0
minute(my_date)
[1] 35
hour(my_date)
[1] 5
day(my_date)
[1] 14
month(my_date)
[1] 10
year(my_date)
[1] 2021
Utilizzando queste funzioni possiamo estrarre i valori di secondi, minuti, ore, giorni, mesi e anni dal nostro oggetto data.
Fare riferimento a questo cheat sheet online per ottenere una comprensione completa delle funzioni più comunemente utilizzate nel pacchetto Lubrificante.
Risorse addizionali
I seguenti tutorial spiegano come eseguire altre conversioni comuni in R:
Come convertire una stringa in Datetime in R
Come convertire i numeri in date in R
Come ordinare un frame di dati per data in R