Calculer à partir des tables fournies dans le fichier majic.RData issues des fichiers fonciers (cf. http://piece-jointe-carto.developpement-durable.gouv.fr/NAT004/DTerNP/html3/_ff_descriptif_tables_image.html#pnb10) un indicateur d'étalement urbain entre 2009 et 2014 à la commune et à l'EPCI sur la région Pays de la Loire (départements 44, 49, 53, 72 et 85), et catégoriser chaque territoire.

Définitions :

library(tidyverse)
library(lubridate)
library(COGiter)
load(file = system.file("extdata", "majic.RData", package = "savoirfR"))

Résultats attendus :

rm(list = ls())
library(tidyverse)
library(COGiter)
load("extdata/majic.RData")

Résultat attendu : création de l'indicateur artificialisation pour les deux millésimes de majic (solution COGiter)

# pour chaque millésime de majic, on remet les données sur la nouvelle carte des territoires et on crée une variable artif

majic_2009 <- bind_rows(majic_2009_com44, majic_2009_com49, majic_2009_com53, majic_2009_com72, majic_2009_com85) %>%
  select(-idcomtxt) %>%
  cogifier(code_commune = "idcom", communes = TRUE, epci = TRUE, departements = FALSE, regions = FALSE) %>%
  mutate(artif_2009 = dcnt07 + dcnt09 + dcnt10 + dcnt11 + dcnt12 + dcnt13) %>%
  select(-starts_with("dcnt"))

majic_2014 <- bind_rows(majic_2014_com44, majic_2014_com49, majic_2014_com53, majic_2014_com72, majic_2014_com85) %>%
  select(-idcomtxt) %>%
  cogifier(code_commune = "idcom", communes = TRUE, epci = TRUE, departements = FALSE, regions = FALSE) %>%
  mutate(artif_2014 = dcnt07 + dcnt09 + dcnt10 + dcnt11 + dcnt12 + dcnt13) %>%
  select(-starts_with("dcnt"))

majic_2009 %>%
  glimpse()

majic_2014 %>%
  glimpse()

Résultat attendu : création de les indicateurs pop_2009 et pop_2014 pour les deux millésimes de majic (solution COGiter)

# on passe également les données de population sur la nouvelle carte des territoires

p_2009 <- population_2009 %>%
  cogifier(code_commune = "idcom", communes = TRUE, epci = TRUE, departements = FALSE, regions = FALSE) %>% 
  rename(pop_2009 = Population)

p_2014 <- population_2014 %>%
  cogifier(code_commune = "idcom", communes = TRUE, epci = TRUE, departements = FALSE, regions = FALSE) %>% 
  rename(pop_2014 = Population)

p_2009 %>%
  glimpse()

p_2014 %>%
  glimpse()

Résultat attendu : jointude implicite sur idcom et création de l'indicateur d'étalement urbain(solution COGiter) :

# indicateurs à la commune et à l'EPCI
# on joint les 4 tables précédentes par commune et on calcule les indicateurs
etalement_urbain <- majic_2009 %>%
  full_join(majic_2014) %>%
  full_join(p_2009) %>%
  full_join(p_2014) %>%
  mutate(
    evoarti = 100 * artif_2014 / artif_2009 - 100,
    evopop = 100 * pop_2014 / pop_2009 - 100,
    #indicateur_etalement_simple nommé ies
    ies = evoarti / evopop,
    indicateur_etalement_avance = case_when(
      evoarti < 0 & evopop >= 0 ~ "1",
      evoarti >= 0 & evopop >= 0 & (ies <= 1 | evopop == 0) ~ "2a",
      evoarti < 0 & evopop < 0 & ies > 1 ~ "2b",
      evopop < 0 & ies >= 0 & ies <= 1 ~ "2c",
      evopop > 0 & evoarti > 0 & evoarti <= 4.9 & ies > 1 ~ "3",
      evopop > 0 & evoarti > 4.9 & ies > 1 & ies <= 2 ~ "4",
      evopop > 0 & evoarti > 4.9 & ies > 2 ~ "5",
      evopop < 0 & ies < 0 ~ "6"
    )
  )
etalement_urbain %>%
  glimpse()

Résultat attendu pour etalement_urbain_commune:

# Indicateur à la commune
# on filtre la table précédente pour ne garder que les lignes communales

etalement_urbain_commune <- etalement_urbain %>% 
  filter(TypeZone == 'Communes')

etalement_urbain_commune %>%
  glimpse()

Résultat attendu pour etalement_urbain_epci:

# Indicateur à l'EPCI
# on filtre la table précédente pour ne garder que les lignes EPCI
etalement_urbain_epci <- etalement_urbain %>% 
  filter(TypeZone == 'Epci')

etalement_urbain_epci %>%
  glimpse()

Résultat attendu pour le graphique (vu au M5) :

# Deux graphiques de visualisation de notre indicateur
ggplot(data = etalement_urbain_epci) +
  geom_point(aes(x = evoarti, y = evopop, color = indicateur_etalement_avance)) +
  theme_minimal() +
  labs(
    title = "Indicateur d'étalement urbain sur les EPCI de la région Pays de la Loire",
    x = "Evolution de l'artificialisation", y = "Evolution de la démographie",
    color = "",
    caption = "Source : Majic et Recensement de la population"
  )

ggplot(data = etalement_urbain_commune) +
  geom_point(aes(x = evoarti, y = evopop, color = indicateur_etalement_avance),
    size = 0.5, alpha = 0.5
  ) +
  theme_minimal() +
  labs(
    title = "Indicateur d'étalement urbain sur les communes de la région Pays de la Loire",
    subtitle = "Entre 2009 et 2014", x = "Evolution de l'artificialisation",
    y = "Evolution de la démographie", color = "",
    caption = "Source : Majic et Recensement de la population"
  )


MTES-MCT/parcours_r_exercices documentation built on Dec. 3, 2024, 1:29 p.m.