Crear horas y aplicarles formato
De forma similar a lo que sucedía en el trabajo con fechas, puedes utilizar as.POSIXct()
para convertir una cadena de caracteres en un objeto POSIXct
y format()
para convertir un objeto POSIXct
en una cadena de caracteres. De nuevo, tienes una gran variedad de símbolos:
%H
: horas como número del sistema decimal (00-23)%I
: horas como número del sistema decimal (01-12)%M
: minutos como número del sistema decimal%S
: segundos como número del sistema decimal%T
: notación abreviada del formato típico%H:%M:%S
%p
: indicador AM/PM
Para obtener una lista completa de los símbolos de conversión, consulta la documentación de strptime
en la consola:
?strptime
De nuevo, as.POSIXct()
utiliza un formato predeterminado para aplicar coincidencia a cadenas de caracteres. En este caso, es %Y-%m-%d %H:%M:%S
. En este ejercicio se hace abstracción de las diferentes zonas horarias.
Este ejercicio forma parte del curso
R intermedio
Instrucciones de ejercicio
- Convierte dos cadenas que representan marcas de tiempo,
str1
ystr2
, en objetosPOSIXct
llamadostime1
ytime2
. - Utilizando
format()
, crea una cadena a partir detime1
que contenga solo los minutos. - De
time2
, extrae las horas y los minutos como "hours:minutes AM/PM". Consulta el texto de la asignación anterior para buscar los símbolos de conversión correctos.
Ejercicio interactivo práctico
Pruebe este ejercicio completando este código de muestra.
# Definition of character strings representing times
str1 <- "May 23, '96 hours:23 minutes:01 seconds:45"
str2 <- "2012-3-12 14:23:08"
# Convert the strings to POSIXct objects: time1, time2
time1 <- as.POSIXct(str1, format = "%B %d, '%y hours:%H minutes:%M seconds:%S")
# Convert times to formatted strings