Come utilizzare le funzioni strptime e strftime in r
È possibile utilizzare le funzioni strptime e strftime in R per convertire tra oggetti carattere e tempo.
La funzione strptime converte i caratteri in oggetti ora e utilizza la seguente sintassi di base:
strptime(character_object, format=" %Y-%m-%d ")
La funzione strftime converte gli oggetti tempo in caratteri e utilizza la seguente sintassi di base:
strftime(time_object)
Gli esempi seguenti mostrano come utilizzare nella pratica ciascuna funzione.
Esempio 1: utilizzare la funzione strptime in R
Supponiamo di avere il seguente vettore di caratteri in R:
#create character vector
char_data <- c("2022-01-01", "2022-01-25", "2022-02-14", "2022-03-19")
#view class of vector
class(char_data)
[1] “character”
Possiamo usare la funzione strptime per convertire i caratteri in oggetti temporali:
#convert characters to time objects
time_data <- strptime(char_data, format=" %Y-%m-%d ")
#view new vector
time_data
[1] "2022-01-01 UTC" "2022-01-25 UTC" "2022-02-14 UTC" "2022-03-19 UTC"
#view class of new vector
class(time_data)
[1] “POSIXlt” “POSIXt”
Si può vedere che i personaggi sono stati convertiti in oggetti temporali.
Nota che possiamo anche usare l’argomento tz per convertire i caratteri in oggetti temporali con un fuso orario specifico.
Ad esempio, potremmo specificare “EST” per convertire i caratteri in oggetti temporali nel fuso orario orientale:
#convert characters to time objects in EST time zone
time_data <- strptime(char_data, format=" %Y-%m-%d ", tz=" IS ")
#view new vector
time_data
[1] "2022-01-01 EST" "2022-01-25 EST" "2022-02-14 EST" "2022-03-19 EST"
Tieni presente che ciascuno degli oggetti temporali ora termina con EST , che indica un fuso orario orientale.
Esempio 2: utilizzare la funzione strftime in R
Supponiamo di avere il seguente vettore di oggetti temporali in R:
#create vector of time objects
time_data <- as. POSIXct (c("2022-01-01", "2022-01-25", "2022-02-14"))
#view class of vector
class(time_data)
[1] “POSIXct” “POSIXt”
Possiamo usare la funzione strftime per convertire oggetti temporali in caratteri:
#convert time objects to characters
char_data <- strftime(time_data)
#view new vector
char_data
[1] "2022-01-01" "2022-01-25" "2022-02-14"
#view class of new vector
class(char_data)
[1] “character”
Vediamo che gli oggetti temporali sono stati convertiti in personaggi.
Risorse addizionali
I seguenti tutorial spiegano come utilizzare altre funzioni comuni in R:
Come utilizzare la funzione tabulate() in R
Come utilizzare la funzione split() in R
Come utilizzare la funzione match() in R
Come utilizzare la funzione replicate() in R