Générer une moyenne mensuelle
Bien que la commande to.period() soit utile dans de nombreux contextes, dans votre cas il n'est peut‑être pas pertinent de choisir une seule ligne pour représenter tout le mois.
Il est plutôt plus logique de calculer des valeurs de température moyennes par mois. Pour ce faire, vous devrez calculer manuellement la moyenne mensuelle à l'aide de split() et lapply(), puis générer un nouvel objet xts avec as.xts(). Cela peut sembler compliqué, mais vous avez déjà les compétences pour y arriver!
L'objet xts sous‑sélectionné de l'exercice précédent, temps_xts_2, est préchargé dans votre espace de travail. Un objet index contenant un vecteur de dates correspondant au premier jour de chaque mois couvert par les données est aussi préchargé.
Cette activité fait partie du cours
Étude de cas : analyser des séries chronologiques urbaines en R
Instructions de l’exercice
- Utilisez
split()pour générer des listes mensuelles à partir de la colonnemeande votre objettemps_xts_2. Assurez‑vous d'indiquer"months"comme période (l'argumentf). - Utilisez
lapply()pour calculer la « moyenne des moyennes », c'est‑à‑dire la température moyenne mensuelle. - Utilisez
as.xts()pour générer un nouvel objet xts contenant la température moyenne mensuelle à Boston de 2010 à 2015. Pour y arriver, vous devrez combiner vos données mensuellesmean_of_meansavec votre objet mensuelindex. - Enfin, confirmez que votre nouvel objet
temps_monthlypartage la même durée et la même périodicité queflights_xts.
Exercice interactif pratique
Essayez cet exercice en complétant ce code d’exemple.
# Split temps_xts_2 into separate lists per month
monthly_split <- split(___$___ , f = "___")
# Use lapply to generate the monthly mean of mean temperatures
mean_of_means <- lapply(___, FUN = ___)
# Use as.xts to generate an xts object of average monthly temperature data
temps_monthly <- as.xts(as.numeric(___), order.by = ___)
# Compare the periodicity and duration of your new temps_monthly and flights_xts
periodicity(___)
periodicity(___)