# Load libraries
library(dplyr)
library(ggplot2)
library(readr)
# Prepare official data
source("datasets/qualite-air-horaire/preparation.R")
# Import prepared files
air_jour <- read_csv(
"data/processed/qualite-air-horaire/resume_journalier_contaminants_2025.csv",
show_col_types = FALSE
)
resume_contaminants <- read_csv(
"data/processed/qualite-air-horaire/resume_contaminants_2025.csv",
show_col_types = FALSE
)
episodes_pm25 <- read_csv(
"data/processed/qualite-air-horaire/episodes_pm25_2025.csv",
show_col_types = FALSE
)
# Coverage by contaminant
resume_contaminants |>
arrange(desc(n_mesures)) |>
select(contaminant_source, n_mesures, n_stations, moyenne, p95, maximum)
# PM2.5 exploratory time series
pm25 <- air_jour |>
filter(contaminant_source == "PM2.5-T640", n_heures_valides >= 18)
ggplot(pm25, aes(x = date, y = moyenne, group = station_id)) +
geom_line(alpha = 0.25, linewidth = 0.3) +
labs(
title = "Moyennes journalières de PM2.5 par station, 2025",
x = "Date",
y = "Moyenne journalière des valeurs publiées"
) +
theme_minimal()
# Highest daily PM2.5 summaries
episodes_pm25 |>
select(date, station_name, n_heures_valides, moyenne, maximum, p95) |>
slice_head(n = 10)Tableau de bord exploratoire de la qualité de l’air
En classe, cette activité sert à…
Cette activité sert à travailler les notions suivantes : séries temporelles, valeurs manquantes, résumé journalier, visualisation, données environnementales à partir d’une question située dans le contexte suivant : Environnement. Elle demande aux étudiantes et étudiants de répondre à la question directrice suivante : Comment construire un portrait exploratoire des contaminants atmosphériques sans surinterpréter les épisodes?
| Élément | Information |
|---|---|
| Durée | 2-3 heures |
| Niveau | Introduction à intermédiaire |
| Usage recommandé | Mini-projet guidé |
| Préparation enseignant | Préparation requise : exécuter Rscript datasets/qualite-air-horaire/preparation.R depuis la racine, puis vérifier que data/processed/qualite-air-horaire/resume_journalier_contaminants_2025.csv existe. |
| Production attendue | Un court rapport reproductible avec contexte, tableau ou graphique, interprétation et limites. |
| Données | data/processed/qualite-air-horaire/resume_journalier_contaminants_2025.csv |
Contexte
Cette activité utilise le jeu de données Qualité de l’air au Québec. Elle part d’une question de classe plutôt que d’une démonstration technique : Comment construire un portrait exploratoire des contaminants atmosphériques sans surinterpréter les épisodes?
Objectifs d’apprentissage
- Travailler séries temporelles.
- Travailler valeurs manquantes.
- Travailler résumé journalier.
- Travailler visualisation.
- Nommer au moins une limite d’interprétation.
Préparation enseignante
- Préparation requise : exécuter
Rscript datasets/qualite-air-horaire/preparation.Rdepuis la racine, puis vérifier quedata/processed/qualite-air-horaire/resume_journalier_contaminants_2025.csvexiste. - Fichier préparé :
data/processed/qualite-air-horaire/resume_journalier_contaminants_2025.csv. - Script de préparation :
datasets/qualite-air-horaire/preparation.R. - Point à surveiller : Demander une section qui distingue observation élevée, hypothèse explicative et preuve causale.
Consignes
- Importer
resume_journalier_contaminants_2025.csvou exécuterdatasets/qualite-air-horaire/preparation.Rsi le fichier est absent. - Identifier ce que représente une ligne du fichier.
- Produire un tableau ou un graphique adapté à la question directrice.
- Rédiger une interprétation courte qui distingue description et explication.
- Nommer au moins une limite méthodologique ou une information absente.
Déroulé suggéré
- Cadrer la source, la licence et l’unité statistique.
- Préparer ou importer les données.
- Produire un premier résumé descriptif.
- Construire la visualisation ou le tableau principal.
- Rédiger l’interprétation et les limites.
Limites à faire nommer
- Demander une section qui distingue observation élevée, hypothèse explicative et preuve causale.
- Si une variable ou un dénominateur nécessaire n’est pas disponible dans les données, l’écrire explicitement plutôt que l’inférer.
Mise en situation
Une équipe de communication scientifique veut produire un portrait exploratoire de la qualité de l’air au Québec à partir des mesures horaires continues du RSQAQ. Votre mandat est de construire un petit tableau de bord ou rapport reproductible pour l’année 2025.
Le livrable doit rester descriptif. Il peut repérer des journées et des stations intéressantes, mais il ne doit pas attribuer automatiquement une cause aux valeurs élevées.
Livrable attendu
Un rapport Quarto ou un prototype de tableau de bord comprenant :
- une courte description de la source;
- une section sur les valeurs manquantes;
- un graphique temporel pour PM2.5;
- un graphique ou tableau comparant plusieurs contaminants;
- une sélection d’une station ou d’une période;
- une section de limites;
- le code reproductible.
Données utilisées
Source : Données Québec / MELCCFP / RSQAQ, RSQAQ - Données horaires continues, ressource CSV 2025.
Fichiers préparés :
data/processed/qualite-air-horaire/resume_journalier_contaminants_2025.csv;data/processed/qualite-air-horaire/resume_contaminants_2025.csv;data/processed/qualite-air-horaire/resume_stations_2025.csv;data/processed/qualite-air-horaire/episodes_pm25_2025.csv;data/processed/qualite-air-horaire/valeurs_manquantes_contaminants_2025.csv.
Étapes
- Exécuter
source("datasets/qualite-air-horaire/preparation.R"). - Importer les fichiers préparés.
- Présenter les dimensions : stations, contaminants, mesures non manquantes.
- Choisir un contaminant principal, par exemple PM2.5.
- Définir un seuil minimal d’heures valides.
- Visualiser les moyennes journalières par station.
- Identifier quelques journées élevées.
- Comparer la couverture des contaminants.
- Rédiger une section de limites et de prudence.
Code de départ
Questions d’analyse
- Quels contaminants ont la meilleure couverture en 2025?
- Quelles stations apparaissent dans les journées PM2.5 les plus élevées?
- Les journées élevées sont-elles concentrées dans quelques périodes?
- Comment les résultats changent-ils si le seuil d’heures valides change?
- Quelles données externes seraient nécessaires pour expliquer les épisodes?
Critères d’évaluation
| Critère | Attendu |
|---|---|
| Source | Le paquet CKAN et la ressource 2025 sont cités. |
| Reproductibilité | Le script de préparation est exécuté ou appelé. |
| Couverture | Les valeurs manquantes et heures valides sont discutées. |
| Graphiques | Les graphiques sont lisibles et ne mélangent pas les unités sans justification. |
| Interprétation | Les conclusions restent descriptives. |
| Limites | Les causes possibles ne sont pas affirmées sans données externes. |
Résultats attendus
Un bon rapport montre que PM2.5 et O3 sont les contaminants les plus couverts dans la ressource 2025, puis utilise PM2.5 comme exemple principal. Le rapport doit expliquer pourquoi les valeurs élevées sont des signaux à explorer plutôt que des preuves causales.
Variantes possibles
- Construire un tableau de bord Shiny avec choix de station et contaminant.
- Ajouter une carte si des coordonnées de stations sont jointes à partir d’une autre source.
- Comparer PM2.5 et O3 dans deux graphiques séparés.
- Créer une note de communication publique sur une journée élevée.
Fiche de mise en œuvre
Contrat pédagogique
Le statut pédagogique décrit le degré de préparation de l’activité. Il ne remplace pas la vérification de la source de données.
- Objectifs d'apprentissage
-
- Travailler séries temporelles.
- Travailler valeurs manquantes.
- Travailler résumé journalier.
- Travailler visualisation.
- Nommer au moins une limite d'interprétation.
-
Préparation requise : exécuter
Rscript datasets/qualite-air-horaire/preparation.Rdepuis la racine, puis vérifier quedata/processed/qualite-air-horaire/resume_journalier_contaminants_2025.csvexiste. -
Fichier préparé :
data/processed/qualite-air-horaire/resume_journalier_contaminants_2025.csv. -
Script de préparation :
datasets/qualite-air-horaire/preparation.R. - Point à surveiller : Demander une section qui distingue observation élevée, hypothèse explicative et preuve causale.
- Demander une section qui distingue observation élevée, hypothèse explicative et preuve causale.
- Si une variable ou un dénominateur nécessaire n'est pas disponible dans les données, l'écrire explicitement plutôt que l'inférer.
- une courte description de la source;
- une section sur les valeurs manquantes;
- un graphique temporel pour PM2.5;
- un graphique ou tableau comparant plusieurs contaminants;
- une sélection d'une station ou d'une période;
- une section de limites;
- le code reproductible.
-
data/processed/qualite-air-horaire/resume_journalier_contaminants_2025.csv; -
data/processed/qualite-air-horaire/resume_contaminants_2025.csv; -
data/processed/qualite-air-horaire/resume_stations_2025.csv; -
data/processed/qualite-air-horaire/episodes_pm25_2025.csv; -
data/processed/qualite-air-horaire/valeurs_manquantes_contaminants_2025.csv. - Construire un tableau de bord Shiny avec choix de station et contaminant.
- Ajouter une carte si des coordonnées de stations sont jointes à partir d'une autre source.
- Comparer PM2.5 et O3 dans deux graphiques séparés.
- Créer une note de communication publique sur une journée élevée.
- Prérequis
-
- Vérifier le fichier ou le script de préparation annoncé avant la séance; adapter la mise en route au niveau indiqué.
- Préparation enseignante
-
-
Préparation requise : exécuter
Rscript datasets/qualite-air-horaire/preparation.Rdepuis la racine, puis vérifier quedata/processed/qualite-air-horaire/resume_journalier_contaminants_2025.csvexiste.
-
Préparation requise : exécuter
- Production attendue
-
- Un court rapport reproductible avec contexte, tableau ou graphique, interprétation et limites.
- Critères de réussite
-
- La production attendue est remise : Un court rapport reproductible avec contexte, tableau ou graphique, interprétation et limites.
- Les résultats sont interprétés sans dépasser les limites de la source.
- Adaptations possibles
-
- Fournir une table préparée ou réduire le nombre de variables pour une première utilisation.
- Ajouter une comparaison, une justification méthodologique ou une discussion des limites pour approfondir.
Statut pédagogique : Prête à enseigner