Skip to content
Snippets Groups Projects

intégrer couche action coeur de ville (acv)

Open MORIN Edouard requested to merge 38-acv into master
1 file
+ 189
0
Compare changes
  • Side-by-side
  • Inline
+ 189
0
---
title: "Intégration Communes lauréates de l'appel à projet centre-ville centre-bourg 2023-2027"
author: "Edouard MORIN"
date: "`r format(Sys.Date(), '%d/%m/%Y')`"
output:
html_document:
df_print: paged
toc: yes
toc_depth: '2'
params:
annee: "2024"
sgbd: TRUE
---
```{r setup, include=FALSE}
#remotes::install_github("MaelTheuliere/COGiter")
library(COGiter)
#remotes::install_gitlab('dreal-pdl/csd/collectr', host="gitlab-forge.din.developpement-durable.gouv.fr")
library(collectr)
#remotes::install_gitlab('dreal-pdl/csd/datalibaba', host = "gitlab-forge.din.developpement-durable.gouv.fr")
library(datalibaba)
library(DBI)
library(dplyr)
#devtools::install_github("hadley/emo")
library(emo)
library(httr)
library(readxl)
library(RPostgres)
library(sf)
knitr::opts_chunk$set(echo=TRUE, message = FALSE, warning = FALSE, error = FALSE, cache=TRUE, eval=FALSE)
```
# Objectifs
intégrer au SGBD les données Croisement des dispositifs de politique publique de l'ANCT
https://www.data.gouv.fr/fr/datasets/croisement-des-dispositifs-de-politique-publique-de-lanct/
metadonnées :
https://www.data.gouv.fr/fr/datasets/r/0d6ce2c9-c493-4e2d-80a8-e0a4e574815c
# Mise à jour de la table des dispositifs ANCT
**Livrable :** *tables sial_zonages_habitat.n_dispositifs_anct_com_000_`r params$annee`* et *sial_zonages_habitat.n_dispositifs_anct_com_r52_`r params$annee`* dans la base
*production*
## Création du dataframe `dispositifs_anct_com_000`
Ce dataframe contient la liste de toutes les communes de France (entière avec DOM et COM).
La variable `insee_com` permettra de faire ultérieurement la jointure avec les communes COG `r params$annee`
```{r load_dispositifs_anct_com_000}
# Chargement du fichier source (adresse valable pour l'année 2024)
dispositifs_anct_com_000 <- read.csv('https://static.data.gouv.fr/resources/croisement-des-dispositifs-de-politique-publique-de-lanct/20241216-104141/ngeo-anct-cog2024.csv')
```
## Publication du dataframe `dispositifs_anct_com_000_`r params$annee`` dans la base `production`
```{r publish_dispositifs_anct_com_000}
# Publication de la table dans la base consultation
datalibaba::poster_data(data = dispositifs_anct_com_000,
table = paste0("n_dispositifs_anct_com_000_",params$annee),
schema = "sial_zonages_habitat",
db = "production",
overwrite = TRUE,
pk = "insee_com",
user = "admin")
```
## Ajout des commentaires de la table `n_dispositifs_anct_com_000_`r params$annee``
### Description de la table actualisée
```{r comment_table_n_dispositifs_anct_com_000}
# Ajout du commentaire sur la table
datalibaba::commenter_table(
comment = glue::glue("Croisement des dispositifs de l’ANCT pour chaque commune de France au 25/11/2024 - Commune France entière COG 2024 (source : anct.gouv.fr)"),
table = paste0("n_dispositifs_anct_com_000_",params$annee),
schema = "sial_zonages_habitat",
db = "production",
user = "admin"
)
```
### Description des champs de la table
```{r comment_fields_n_dispositifs_anct_com_000}
# Création d'une liste avec les noms des variables et leurs descriptions
variables <- c(
"id_acv", "identifiant du dispositif Action coeur de ville",
"id_acv2", "identifiant du dispositif Action coeur de ville volontaire pour les Entrées de ville",
"id_ami", "identifiant du lauréat Avenir montagnes ingénierie",
"id_amm", "identifiant du lauréat Avenir montagnes mobilités",
"id_cde", "identifiant de la Cité de l’emploi",
"id_crte", "identifiant du contrat de relance et de transition écologique",
"id_fabp", "identifiant de la Fabrique prospective",
"id_fs", "identifiant de la France services",
"id_pvd","identifiant du dispositif Petites villes de demain",
"id_ti","identifiant du dispositif Territoires d’industrie",
"id_va","identifiant du dispositif Village d’avenir",
"insee_com","code insee de la commune",
"lib_com","libellé de la commune"
)
# Création du dataframe avec les variables
comments <- data.frame(
nom_variable = variables[seq(1, length(variables), by = 2)],
libelle_variable = variables[seq(2, length(variables), by = 2)],
stringsAsFactors = FALSE
)
# Publication du dictionnaire de données
datalibaba::post_dico_attr(
dico = comments,
table = paste0("n_dispositifs_anct_com_000_",params$annee),
schema = "sial_zonages_habitat",
db = "production",
user = "admin"
)
```
# Création de la table restreinte au commune des Pays de la Loire
*sial_zonages_habitat.n_dispositifs_anct_com_r52_`r params$annee`*
## Chargement des tables nécessaires au traitement
```{r load_tables_n_com_r52}
# Chargement des communes à partir d'ADMIN EXPRESS
commune_r52 <- datalibaba::importer_data(
table = "commune",
schema = "adminexpress_cog",
db = "referentiels",
user = "admin"
) %>% filter(insee_reg == '52') %>%
select(insee_com) %>%
sf::st_drop_geometry()
```
## Filtrage des dispositifs ANCT France entière avec le code régional 52
```{r filtre_n_com_r52}
dispositifs_anct_com_52 <- dispositifs_anct_com_000 %>%
inner_join(commune_r52)
```
## Publication du dataframe `n_dispositifs_anct_com_52_`r params$annee`` dans la base `production`
```{r publish_n_scot_s_r52}
# Publication de la table dans la base consultation
datalibaba::poster_data(data = dispositifs_anct_com_52,
table = paste0("n_dispositifs_anct_com_r52_",params$annee),
schema = "sial_zonages_habitat",
db = "production",
pk = "insee_com",
overwrite = TRUE,
user = "admin")
```
## Ajout des commentaires de la table `n_dispositifs_anct_com_r52_`r params$annee``
### Description de la table actualisée
```{r comment_table_n_dispositifs_anct_com_r52}
# Ajout du commentaire sur la table
datalibaba::commenter_table(
comment = glue::glue("Croisement des dispositifs de l’ANCT pour chaque commune au 25/11/2024 - Commune Pays de la Loire COG 2024 (source : anct.gouv.fr)"),
table = paste0("n_dispositifs_anct_com_r52_",params$annee),
schema = "sial_zonages_habitat",
db = "production",
user = "admin"
)
```
### Description des champs de la table
```{r comment_fields_n_dispositifs_anct_com_r52}
# Publication du dictionnaire de données
datalibaba::post_dico_attr(
dico = comments,
table = paste0("n_dispositifs_anct_com_r52_",params$annee),
schema = "sial_zonages_habitat",
db = "production",
user = "admin"
)
```
Loading