Créer et formater des heures
Comme pour les dates, vous pouvez utiliser as.POSIXct() pour convertir une chaîne de caractères en objet POSIXct, et format() pour convertir un objet POSIXct en chaîne de caractères. Là encore, vous disposez d’un large éventail de symboles :
%H: heures en nombre décimal (00-23)%I: heures en nombre décimal (01-12)%M: minutes en nombre décimal%S: secondes en nombre décimal%T: notation abrégée pour le format courant%H:%M:%S%p: indicateur AM/PM
Pour la liste complète des symboles de conversion, consultez la documentation de strptime dans la console :
?strptime
Là encore, as.POSIXct() utilise un format par défaut pour faire correspondre les chaînes de caractères. Dans ce cas, il s’agit de %Y-%m-%d %H:%M:%S. Dans cet exercice, on fait abstraction des différents fuseaux horaires.
Cet exercice fait partie du cours
R niveau intermédiaire
Instructions
- Convertissez deux chaînes représentant des horodatages,
str1etstr2, en objetsPOSIXctappeléstime1ettime2. - À l’aide de
format(), créez une chaîne à partir detime1ne contenant que les minutes. - À partir de
time2, extrayez les heures et minutes au format « heures:minutes AM/PM ». Reportez-vous à l’énoncé ci-dessus pour trouver les bons symboles de conversion !
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
# 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