CommencezCommencez gratuitement

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 : forme abrégée du 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

De plus, as.POSIXct() utilise un format par défaut pour faire correspondre les chaînes de caractères. Dans ce cas, c'est %Y-%m-%d %H:%M:%S. Dans cet exercice, on fait abstraction des différents fuseaux horaires.

Cette activité fait partie du cours

R intermédiaire

Voir le cours

Instructions de l’exercice

  • Convertissez deux chaînes représentant des horodatages, str1 et str2, en objets POSIXct appelés time1 et time2.
  • À l'aide de format(), créez une chaîne à partir de time1 ne contenant que les minutes.
  • À partir de time2, extrayez les heures et minutes au format « heures:minutes AM/PM ». Référez-vous au texte de l'énoncé ci-dessus pour trouver les bons symboles de conversion !

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

# 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
Modifier et exécuter le code