Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found
Select Git revision

Target

Select target project
  • dreal-pdl/csd/zonages-habitat
1 result
Select Git revision
Show changes
Commits on Source (3)
---
title: "Petites Villes de Demain"
author: "Philippe Terme"
output: html_document
date: "2025-01-16"
---
```{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(tidyverse)
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=FALSE, eval=FALSE)
```
# Objectifs
Actualiser les lots de données des Petites Villes de Demain en Pays de la Loire :
- `n_pvd_s_r52
# Sources
- Pour les données attributaires : https://www.data.gouv.fr/fr/datasets/programme-petites-villes-de-demain/#/resources
- Pour les données géométriques : [ADMIN EXPRESS COG](https://geoservices.ign.fr/adminexpress#telechargementCog)
stocké dans la base `referentiels`, `adminexpress_cog` :
- `commune`
# Actualisation
Mise à jour en continue depuis le site data.gouv.
Les mises à jour sont annuelles
```{r recuperation des données pvd}
url <- "https://www.data.gouv.fr/fr/datasets/r/1fa831ec-d912-4277-8b95-a8b998bf951e"
destfile <- "ANCT/liste-pvd-com2024-20241125.csv"
download.file(url, destfile, mode = "wb")
pvd <- read.csv("ANCT/liste-pvd-com2024-20241125.csv")
```
## Chargement de la géométrie des communes
```{r load_commune}
# Chargement de la géométrie des communes à partir d'ADMIN EXPRESS COG
commune <- datalibaba::importer_data(
table = "commune",
schema = "adminexpress_cog",
db = "referentiels",
user = "admin"
)
```
## Jointure avec le dataframe des communes de pvd
```{r join_commune_geom}
# Réaliser la jointure pour récupérer the_geom
pvd_geom <- left_join(commune, pvd, by = c("insee_com" = "insee_com")) %>%
#selection des champs
select(id_pvd, date_signature, insee_com, lib_com, the_geom) %>%
# filtrage sur les communes de la région
filter(str_starts(insee_com, "44") | str_starts(insee_com, "49") | str_starts(insee_com, "53") | str_starts(insee_com, "72") | str_starts(insee_com, "85")) %>%
filter(!is.na(id_pvd) & id_pvd != "")
```
## Publication du dataframe `n_pvd_s_r52` dans la base `consultation`
```{r publish_n_pvd_s_r52}
# Publication de la table dans la base consultation
datalibaba::poster_data(data = pvd_geom,
table = "n_pvd_s_r52",
schema = "habitat_politique_de_la_ville",
db = "consultation",
pk = "id_pvd",
overwrite = TRUE,
user = "admin")
```
## Ajout de commentaires à la table
### Description de la table
```{r comment_table_n_pvd_s_r52}
# Ajout du commentaire sur la table
datalibaba::commenter_table(
comment = glue::glue("Programme Petites villes de demain"),
table = "n_pvd_s_r52",
schema = "habitat_politique_de_la_ville",
db = "consultation",
user = "admin"
)
```