Effets d’une mesure de restriction des trajets aériens sur les émissions de Co2

Auteur·rice·s
Affiliation

Thomas Mallet

Enzo Pezzali

Thomas Lechalupe

Niveau technique Enjeux
Débutant Suivre les consignes, tester les exemples, reprendre et comprendre les corrections. Utiliser le fichier CSV mis à disposition si l'intéraction avec l'API est trop compliquée.
Intermédiaire Chercher à faire les exercices et ne regarder les aides que si nécessaire. Se documenter sur l'utilisation de l'API de manière autonome.

Introduction

Prévue par la loi Climat et Résilience de 2021, l’interdiction des lignes aériennes lorsque des alternatives en train de moins de 2h30 sont disponibles est entrée en vigueur en 2023. Devrait-on aller plus loin ? Quels seraient les avantages d’une restriction plus étendue des vols intérieurs ? Pour éclairer ces questions, nous proposons d’examiner les effets potentiels de nouvelles restrictions sur les émissions de CO2.

Cette étude se concentrera sur les liaisons aériennes entre les dix plus grandes agglomérations de la métropole française. Elle visera à quantifier et à localiser les émissions de CO2 évitées grâce à des interdictions hypothétiques de vols lorsqu’une alternative ferroviaire existe en moins de 3h30, 4h30, 5h30, etc.

En travaillant sur ce sujet vous apprendrez à :

  • Interroger l’API de TravelTime pour obtenir des données de temps de trajet
  • Utiliser des données de trafic aérien pour calculer des émissions de CO2
  • Créer une carte interactive avec le package leaflet et des fonds de carte de Stadia Maps

1 Déroulement du sujet

  1. Interaction avec l’API de routage de TravelTime
  2. Récupération des coordonnées des villes françaises
  3. Obtention du temps de transport entre 2 villes
  4. Téléchargement et traitement des données de trafic aérien entre deux villes
  5. Datavisualisation des données sur une carte avec le package leaflet

2 Initialisation du projet

2.1 Récupérer le projet squelette avec Git

Si vous disposez d’un compte sur le SSP Cloud, la méthode recommandée pour lancer ce tutoriel est de cliquer sur le bouton suivant :

Onyxia

Si vous utilisez effectivement ce lien de lancement rapide, vous pouvez sauter l’étape de récupération du modèle de projet avec Git, cela a été fait automatiquement lors de la création de votre environnement RStudio.

La fiche utilitR sur l’utilisation de Git explicite la démarche générale pour récupérer du code grâce à Git. Il est recommandé de lire celle-ci si vous n’êtes pas familier de Git.

Les étapes suivantes permettront de récupérer le projet:

  • 1️⃣ En premier lieu, dans RStudio, créer un nouveau projet et sélectionner Version Control.

  • 2️⃣ Choisir Git, ce qui devrait ouvrir une fenêtre similaire à celle ci-dessous :

  • 3️⃣ Dans la fenêtre Repository URL, copier https://github.com/inseefrlab/funathon2024_sujet1.git laisser les valeurs par défaut qui viennent ensuite et créer le projet.

Après avoir ouvert un terminal dans RStudio, exécuter

git clone https://github.com/inseefrlab/funathon2024_sujet1.git

puis, dans l’explorateur de fichiers (fenêtre en bas à droite), cliquer sur le fichier RTraffic.Rproj pour ouvrir le projet.

Le projet récupéré comporte de nombreux fichiers. Nous allons progressivement les découvrir dans ce tutoriel.

2.2 Se placer dans le projet RStudio associé au sujet

2.2.1 Principe

A la racine du projet, on trouve notamment le fichier funathon-sujet1.Rproj. Il s’agit d’un fichier de projet RStudio. Lorsqu’on travaille sur du code R avec RStudio, il est généralement préférable de travailler dans le cadre d’un projet. Entre autres raisons, cela favorise la reproductibilité : lorsqu’on se situe dans un projet RStudio, tous les chemins peuvent être définis de manière relative (à la racine du projet) plutôt que de manière absolue (à la racine de la machine). Ainsi, le projet s’exécutera de la même manière qu’il soit exécuté depuis une machine Windows ou Linux par exemple, ou avec des noms d’utilisateur différents. Pour plus de détails sur les bénéfices d’utiliser les projets RStudio ou leur utilisation en pratique, n’hésitez pas à consulter la fiche UtilitR dédiée.

2.2.2 Activer un projet RStudio

Pour activer le projet RStudio associé au sujet, deux possibilités :

  • cliquer directement sur le fichier dans l’explorateur de fichiers (en bas à droite)

  • cliquer sur File > Open Project puis dérouler l’arborescence jusqu’à sélectrionner le fichier .Rproj

Si cela a fonctionné, vous devriez voir le nom du projet (funathon2024_sujet1) dans le coin en haut à droite de RStudio.

2.3 Installer les packages nécessaires pour ce tutoriel

2.3.1 Principe

Pour progresser dans ce tutoriel, un certain nombre de packages doivent être installés. Sans eux, même avec le code de l’application, vous ne serez pas en mesure de reproduire celle-ci.

Les bonnes pratiques pour la gestion de l’environnement suggèrent de lister l’intégralité des packages et leur versions associées ce que permet de faire automatiquement renv. Grâce à cette liste, d’autres personnes pourront reproduire l’application si elles disposent des mêmes inputs (le code, les données…).

En effet, il est important de voir l’application comme le résultat de la combinaison de plusieurs ingrédients. Dans notre cas, nous en avons trois :

  • Du code R : celui-ci a été récupéré par le biais de Git via Github
  • Des éléments de configuration :
    • le fichier renv.lock (R) qui permettra de reconstruire notre environnement à l’identique grâce à des outils adaptés1
    • le fichier secrets.yaml qui contiendra des informations pour pouvoir se connecter à l’API.
  • Des données : nous évoquerons celles-ci lors de la prochaine partie.

1 Ces fichiers ne sont pas générés manuellement. Ce sont des outils adaptés (renv pour R) qui font ce travail de versionnage de l’environnement.

Illustration du principe de séparation du code, des données et de la configuration

De manière générale, c’est une bonne pratique de structurer son projet comme une combinaison de ces facteurs. Cela vous amènera à faire des projets plus reproductibles mais aussi à la structure plus lisible.

Pour les utilisateurs de R, la formation de l’Insee aux bonnes pratiques consacre une partie aux environnements reproductibles avec renv. N’hésitez pas à aller regarder la documentation de renv

2.3.2 Créer l’environnement

L’intérêt d’utiliser renv réside dans la simplicité de recréer l’environnement nécessaire au bon fonctionnement de l’application : il suffit de lancer la commande suivante dans la console de RStudio :

renv::restore()

Ensuite, il est tout à fait possible d’installer des packages supplémentaires via install.packages. L’environnement proposé par notre fichier renv.lock constitue le minimum requis pour reproduire l’application, mais il n’est pas figé. Si vous ajoutez des packages utiles pour votre application, n’oubliez pas d’exécuter renv::snapshot() avant la mise en production pour mettre à jour le fichier renv.lock. Maintenant que nous disposons d’un environnement fonctionnel, nous pouvons avancer sur la conception du projet. La première étape consiste à explorer les jeux de données que nous utiliserons dans l’application.