Gestion de dates en R

Manipulation des dates en R

Le traitement de dates repose sur un traitement particulier en R. Celle-ci se base sur le nombre de jours depuis le 1er janvier 1970.

Comme dans beaucoup de langages informatiques, la gestion des dates en R repose sur l'heure UNIX et dispose d'une classe propre, permettant de s'affranchir des nomenclatures différentes d'une zone linguistique à l'autre.

Connaître la date de votre environnement en R

Pour commencer, nous allons identifier la date en cours sur notre système. Pour cela, nous allons utiliser la fonction Sys.Date(). Il s'agit d'une fonction de base renvoyant la date au format numérique Année-Mois-Jour.

Voici un exemple d'utilisation

Sys.Date()
[1] "2019-04-02"

 

La fonction Sys.Date() nous envoie un objet de classe Date que nous allons pouvoir manipuler par la suite.

Notez qu'il est également possible d'utiliser la fonction date() qui, en plus de la date au format anglais, nous mentionnera l'heure système.

date()
[1] "Tue Apr 2 11:56:44 2019"

 

Manipulation de date en R

Nous pouvons formater les objets date de manière à les utiliser sous une forme plus conventionnelle. Voici l'ensemble des variables utilisables.

Symbole Fonction Exemple
%d day as a number (0-31) 02
%a
%A
Jour de la semaine minimisé
Jour de la semaine complet
Tue
Tuesday
%m Mois en caractère numérique (00-12) 04
%b
%B
Nom du mois minimisé
Nom du mois complet
Apr
April
%y
%Y
Numéro de l'année à 2 chiffres
Numéro de l'année à 4 chiffres
19
2019

Pour utiliser ces différentes nomenclatures, il faut passer par la fonction format qui va convertir notre objet Date. Voici un exemple :

format(Sys.Date(), format="%A %d %B %Y")
[1] "Mardi 02 avril 2019"

 

Notez qu'il sera nécessaire d'utiliser la fonction as.character() pour manipuler par la suite vos dates comme des chaînes de caractère.

Conversion d'un objet character en date

Pour pouvoir effectuer des opérations sur les dates, il est indispensable de les transformer en objet date grâce à la fonction as.Date(). Celle-ci se décompose de la manière suivante :

as.Date(x = maChaineDeCaractères, format = monFormat)

 

Il est ainsi nécessaire de mentionner le format de la chaîne de caractère pour pouvoir la manipuler. Voici un exemple :

as.Date(x = "02-04-2019", format = "%d-%m-%Y")

 

Notez qu'il n'est pas indispensable de mentionner l'attribut format. Il sera par défaut au format %Y-%m-%d.

Article précédent
Formats / types de données
Article suivant
Nombre aléatoire en R

A propos de l'auteur

David Looses

David Looses est consultant en référencement sénior à l'agence SEO de Lille Aseox. Il est passionné par le langage R et est spécialiste du traitement des données.