Comment créer une série chronologique dans R (avec des exemples)



Le moyen le plus simple de créer un objet de série chronologique dans R consiste à utiliser la fonction ts() .

Cette fonction utilise la syntaxe de base suivante :

ts(données, début, fin, fréquence)

où:

  • data : un vecteur ou une matrice de valeurs de séries chronologiques
  • start : L’heure de la première observation
  • end : L’heure de la dernière observation
  • fréquence : Le nombre d’observations par unité de temps.

Les exemples suivants montrent comment utiliser cette fonction pour créer différents objets de séries chronologiques dans la pratique.

Exemple 1 : Créer une série chronologique avec des données mensuelles

Supposons que nous ayons le vecteur suivant appelé données qui contient le nombre de ventes réalisées par un magasin de détail pendant 20 mois consécutifs, à partir du 1er octobre 2023 :

#create vector of 20 values
data <- c(6, 7, 7, 7, 8, 5, 8, 9, 4, 9, 12, 14, 14, 15, 18, 24, 20, 15, 24, 26)

Nous pouvons utiliser la fonction ts() et spécifier Frequency=12 pour créer un objet de série chronologique à partir de ce vecteur :

#create time series object from vector
ts_data <- ts(data, start=c(2023, 10), frequency=12)

#view time series object
ts_data

     Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec
2023                                       6   7   7
2024   7   8   5   8   9   4   9  12  14  14  15  18
2025  24  20  15  24  26                            

Notez que le vecteur de valeurs a été converti en un objet de série chronologique où les valeurs sont désormais associées à un mois d’octobre 2023 à mai 2025.

Nous pouvons également utiliser la fonction class() pour confirmer que ts_data est bien un objet de série temporelle :

#display class of ts_data object
class(ts_data)

 [1] "ts"

Exemple 2 : Créer une série chronologique avec des données annuelles

Supposons que nous disposions du vecteur suivant appelé données , qui contient le nombre de ventes réalisées par un magasin de détail pendant 20 années consécutives, à partir de 2000 :

#create vector of 20 values
data <- c(6, 7, 7, 7, 8, 5, 8, 9, 4, 9, 12, 14, 14, 15, 18, 24, 20, 15, 24, 26)

Nous pouvons utiliser la fonction ts() et spécifier Frequency=1 pour créer un objet de série chronologique à partir de ce vecteur :

#create time series object from vector
ts_data <- ts(data, start=2023, frequency=1)

#view time series object
Time Series:
Start = 2000 
End = 2019 
Frequency = 1 
 [1]  6  7  7  7  8  5  8  9  4  9 12 14 14 15 18 24 20 15 24 26 

Notez que le vecteur de valeurs a été converti en un objet de série chronologique où les valeurs sont désormais associées à une année de 2000 à 2019.

Nous pouvons également utiliser la fonction class() pour confirmer que ts_data est bien un objet de série temporelle :

#display class of ts_data object
class(ts_data)

 [1] "ts"

Si nous le souhaitons, nous pouvons également utiliser la fonction plot() pour visualiser les ventes par année :

#create line plot of time series data
plot(ts_data)

Notez que l’axe des X affiche l’année et l’axe des Y affiche les valeurs des ventes.

Nous pouvons également personnaliser l’intrigue pour la rendre plus facile à lire :

#create line plot with custom x-axis, y-axis, title, line color and line width
plot(ts_data, xlab='Year', ylab='Sales', main='Sales by Year', col='blue', lwd=3)

N’hésitez pas à modifier les arguments de la fonction plot() pour créer le tracé de série chronologique exact que vous souhaitez.

Ressources additionnelles

Les didacticiels suivants expliquent comment effectuer d’autres tâches courantes dans R :

Comment tracer une série chronologique dans R
Comment convertir une trame de données en série chronologique dans R
Comment convertir une chaîne en Datetime dans R

Ajouter un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *