Come utilizzare difftime in r per calcolare le differenze di orario
È possibile utilizzare la funzione difftime() per calcolare la differenza oraria tra due date o datetime in R.
Questa funzione utilizza la seguente sintassi di base:
difftime(time1, time2, units=" days ")
Oro:
- time1, time2 : entrambe le date o datetime
- unità : le unità da utilizzare per la differenza oraria (l’impostazione predefinita è “giorni”, ma altre opzioni includono “secondi”, “minuti”, “ore” e “settimane”)
Gli esempi seguenti mostrano come utilizzare la funzione difftime() in diversi scenari.
Esempio 1: utilizzare difftime() per calcolare la differenza oraria in varie unità
Il codice seguente mostra come utilizzare la funzione difftime() per calcolare la differenza di tempo tra due date/ora utilizzando unità diverse:
#define two datetimes
first <- "2022-08-20 08:15:22"
second <- "2022-01-01 20:04:48"
#calculate time difference in days
difftime(first, second)
Time difference of 230.5073 days
#calculate time difference in seconds
difftime(first, second, units=" secs ")
Time difference of 19915834 secs
#calculate time difference in minutes
difftime(first, second, units=" mins ")
Time difference of 331930.6 mins
#calculate time difference in hours
difftime(first, second, units=" hours ")
Time difference of 5532.176 hours
#calculate time difference in weeks
difftime(first, second, units=" weeks ")
Time difference of 32.92962 weeks
Usando l’argomento unità , possiamo calcolare la differenza oraria tra due date e orari in unità diverse.
Esempio 2: calcolare la differenza oraria nel formato HH:MM:SS
Possiamo anche utilizzare la funzione as_hms() della libreria hms per calcolare la differenza oraria tra due date/ora, nel formato HH:MM:SS.
library (hms)
#define two datetimes
first <- "2022-01-01 20:15:22"
second <- "2022-01-01 08:04:48"
#calculate difference between datetimes in hours, minutes, seconds
as_hms(difftime(first, second))
12:10:34
L’output visualizza la differenza oraria tra le due date e ore, formattata in ore, minuti e secondi.
In questo scenario, la differenza tra i due tempi è 12 ore, 10 minuti e 34 secondi.
Risorse addizionali
I seguenti tutorial spiegano come eseguire altre attività comuni in R:
Come convertire il timestamp UNIX fino ad oggi in R
Come convertire un carattere in un timestamp in R
Come estrarre l’anno dalla data in R
Come ordinare un frame di dati per data in R