Utiliser merge() et tracer dans le temps
Vous disposez maintenant de données de température couvrant la même période (2010-2015) et avec la même fréquence (mensuelle) que vos données de vols ; vous êtes prêt à les fusionner.
Pour fusionner des objets xts par colonne, vous pouvez utiliser merge(). Lorsque deux objets xts partagent la même périodicité, merge() parvient généralement à combiner les informations dans les lignes appropriées. Même quand des objets xts n’ont pas la même périodicité, merge() préserve le bon ordre temporel de ces objets à travers les périodes.
Dans cet exercice, vous allez fusionner vos deux objets xts par colonne et générer de nouveaux graphiques pour explorer le lien entre les retards de vol et la température. temps_monthly et flights_xts sont disponibles dans votre espace de travail.
Cet exercice fait partie du cours
Étude de cas : analyser des séries temporelles urbaines en R
Instructions
- Utilisez
merge()pour combinerflights_xtsettemps_monthly. Comme ces objets xts partagent la même périodicité, votre commande de fusion doit placer les données de température dans la ligne appropriée de votre objetflights_xts. Notez que l’ordre dans lequel vous listez les objets à fusionner détermine l’emplacement des colonnes dans l’objet fusionné. Pour rester cohérent, insérezflights_xtsen premier ettemps_monthlyen second. - Examinez les premières lignes de votre objet xts fusionné (
flights_temps) pour confirmer que la fusion a réussi. Vous devriez voir les données de température alignées avec les données de vols. - Utilisez
plot.zoo()pour générer un seul graphique contenant à la fois les colonnespct_delayettemps_monthlydeflights_temps. Veillez à sous-ensembler les colonnes pertinentes et à définirplot.typesur"single". Laissez l’argumentltytel quel.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
# Use merge to combine your flights and temperature objects
flights_temps <- merge(___, ___)
# Examine the first few rows of your combined xts object
# Use plot.zoo to plot these two columns in a single panel
plot.zoo(___[,c("___", "___")], plot.type = "___", lty = lty)
legend("topright", lty = lty, legend = labels, bg = "white")