La marca de tiempo de UNIX se refiere a la cantidad de segundos que han transcurrido desde la época. El objeto de marca de tiempo no es fácilmente comprensible y debe convertirse a otros formatos fáciles de usar. Los objetos de fecha en el lenguaje de programación R se pueden usar para mostrar la marca de tiempo especificada de una manera nítida. Los objetos de fecha se almacenan como el número de días desde el 1 de enero de 1970, donde los números negativos se utilizan para fechas anteriores. Aquí veremos cómo convertir la marca de tiempo UNIX en un objeto de fecha en la programación R.
Método 1: Uso del paquete de lubricación
El paquete Lubridate en R se encarga de facilitar el trabajo con fechas y horas. Contiene funciones de análisis especializadas para manipular y modificar las marcas de tiempo en diferentes formatos y zonas horarias disponibles. El paquete debe instalarse en la biblioteca R utilizando la siguiente sintaxis:
install.packages("lubridate")
El método as_datetime() de este paquete se utiliza para convertir la marca de tiempo de UNIX en un objeto de fecha. Este método utilizó la zona horaria UTC de forma predeterminada.
Sintaxis: as_datetime(timestamp, tz)
Argumentos: tz – La zona horaria correspondiente
Código:
R
library("lubridate") timestamp <- 2012368256 datetime <- as_datetime(timestamp) print ("DateTime Notation") print (datetime)
Producción:
[1] "DateTime Notation" [1] "2033-10-08 07:10:56 UTC"
Método 2: Usar el método as.POSIXct
La marca de tiempo se puede convertir primero en un objeto POSIXct y luego se pueden realizar las conversiones. Los objetos POSIXct facilitan el proceso de las operaciones matemáticas, ya que se basan en segundos como la unidad principal de gestión del tiempo. Las fechas se convierten a la zona horaria estándar, UTC. Un objeto de marca de tiempo se puede convertir en un objeto POSIXct, usándolo como método POSIXct (fecha) en R.
as.POSIXct(timestamp, origin = "1970-01-01")
A esto le sigue la aplicación del método as.Date sobre el objeto POSIXct. Los objetos de fecha se almacenan como el número de días calculado a partir del 1 de enero de 1970, donde los números negativos se utilizan para hacer referencia a fechas anteriores. Los objetos de fecha admiten aritmética básica directamente, donde los números enteros se suman o restan directamente de las fechas. El objeto Fecha también puede especificar diferentes formatos para contener las fechas. El método as.Date() toma como entrada un objeto de fecha POSIXct y lo convierte en un objeto de fecha.
as.Date(character date object)
La diferencia que tiene este método es que solo muestra el objeto de fecha, mientras que el método anterior lo convierte en un objeto DateTime completo.
Código:
R
# declaring the timestamp timestamp <- 2012368256 # converting to POSIXct notation posixt <- as.POSIXct(timestamp, origin = "1970-01-01") # converting to readable date # time object datetime <- as.Date(posixt) print ("DateTime Notation") print (datetime)
Producción:
[1] "DateTime Notation" [1] "2033-10-08"