vignettes/cogiter.Rmd
cogiter.Rmd
library(COGiter)
#> Afin de vous connaitre et de mesurer l'usage de ce package, merci de lui mettre une étoile sur github :
#> https://github.com/MaelTheuliere/COGiter
Ce document va vous permettre de comprendre comment fonctionne les différentes fonctions de COGiter pour :
Pour passer une table de données communale à la carte des communes à
jour, vous pouvez utiliser la fonction
passer_au_cog_a_jour()
qui permet de retrouver pour tout
code commune ayant existé le code commune aujourd’hui actif sur son
périmètre géographique.
Attention, cette règle ne marche que pour les fusions de communes.
Le périmètre de couverture de la fonction est pour l’instant la France métropolitaine et les DROM.
tibble::glimpse(pop2015)
#> Rows: 35,441
#> Columns: 4
#> $ DEPCOM <fct> 01001, 01002, 01004, 01005, 01006, 01007, 01008, 01009,…
#> $ pop2015 <dbl> 767, 241, 14127, 1619, 109, 2615, 747, 342, 1133, 390, …
#> $ pop2015_a_part <dbl> 18, 1, 504, 33, 6, 107, 18, 9, 19, 11, 4, 3, 94, 5, 12,…
#> $ pop2015_totale <dbl> 785, 242, 14631, 1652, 115, 2722, 765, 351, 1152, 401, …
pop2015_a_jour <- passer_au_cog_a_jour(pop2015,
code_commune = DEPCOM,
aggrege = TRUE,
garder_info_supra = FALSE
)
tibble::glimpse(pop2015_a_jour)
#> Rows: 34,915
#> Columns: 4
#> $ DEPCOM <fct> 01001, 01002, 01004, 01005, 01006, 01007, 01008, 01009,…
#> $ pop2015 <dbl> 767, 241, 14127, 1619, 109, 2615, 747, 342, 1133, 390, …
#> $ pop2015_a_part <dbl> 18, 1, 504, 33, 6, 107, 18, 9, 19, 11, 4, 3, 94, 12, 5,…
#> $ pop2015_totale <dbl> 785, 242, 14631, 1652, 115, 2722, 765, 351, 1152, 401, …
Pour reconstituer à partir d’une table de données communale
l’ensemble des totaux pour les zonages supra communaux principaux de
France (EPCI, départements, régions), vous pouvez utiliser la fonction
cogifier()
qui permet de recalculer sur la base d’une table
communale ces totaux.
La fonction calcule le total en prenant en dimension toutes les variables facteur ou caractère de la table et en variable à agréger toutes les variables numériques.
En plus des agrégats epci, départements, régions, la fonction
cogifier()
permet de calculer :
metro = TRUE
)metrodrom = TRUE
)drom = TRUE
)franceprovince = TRUE
)
tibble::glimpse(pop2015)
#> Rows: 35,441
#> Columns: 4
#> $ DEPCOM <fct> 01001, 01002, 01004, 01005, 01006, 01007, 01008, 01009,…
#> $ pop2015 <dbl> 767, 241, 14127, 1619, 109, 2615, 747, 342, 1133, 390, …
#> $ pop2015_a_part <dbl> 18, 1, 504, 33, 6, 107, 18, 9, 19, 11, 4, 3, 94, 5, 12,…
#> $ pop2015_totale <dbl> 785, 242, 14631, 1652, 115, 2722, 765, 351, 1152, 401, …
pop2015_cogifiee <- cogifier(pop2015, code_commune = DEPCOM)
tibble::glimpse(pop2015_cogifiee)
#> Rows: 36,283
#> Columns: 6
#> $ TypeZone <fct> Communes, Communes, Communes, Communes, Communes, Commu…
#> $ Zone <fct> "L'Abergement-Clémenciat", "L'Abergement-de-Varey", "Am…
#> $ CodeZone <fct> 01001, 01002, 01004, 01005, 01006, 01007, 01008, 01009,…
#> $ pop2015 <dbl> 767, 241, 14127, 1619, 109, 2615, 747, 342, 1133, 390, …
#> $ pop2015_a_part <dbl> 18, 1, 504, 33, 6, 107, 18, 9, 19, 11, 4, 3, 94, 12, 5,…
#> $ pop2015_totale <dbl> 785, 242, 14631, 1652, 115, 2722, 765, 351, 1152, 401, …
Vous pouvez choisir deux types de format : un format dataframe qui constitue une table unique, un format liste qui constitue une liste de dataframes pour chaque zonage (communes, EPCI, départements, régions).
tibble::glimpse(pop2015)
#> Rows: 35,441
#> Columns: 4
#> $ DEPCOM <fct> 01001, 01002, 01004, 01005, 01006, 01007, 01008, 01009,…
#> $ pop2015 <dbl> 767, 241, 14127, 1619, 109, 2615, 747, 342, 1133, 390, …
#> $ pop2015_a_part <dbl> 18, 1, 504, 33, 6, 107, 18, 9, 19, 11, 4, 3, 94, 5, 12,…
#> $ pop2015_totale <dbl> 785, 242, 14631, 1652, 115, 2722, 765, 351, 1152, 401, …
pop2015_cogifiee_liste <- cogifier(pop2015, code_commune = DEPCOM, as_df = FALSE)
tibble::glimpse(pop2015_cogifiee)
#> Rows: 36,283
#> Columns: 6
#> $ TypeZone <fct> Communes, Communes, Communes, Communes, Communes, Commu…
#> $ Zone <fct> "L'Abergement-Clémenciat", "L'Abergement-de-Varey", "Am…
#> $ CodeZone <fct> 01001, 01002, 01004, 01005, 01006, 01007, 01008, 01009,…
#> $ pop2015 <dbl> 767, 241, 14127, 1619, 109, 2615, 747, 342, 1133, 390, …
#> $ pop2015_a_part <dbl> 18, 1, 504, 33, 6, 107, 18, 9, 19, 11, 4, 3, 94, 12, 5,…
#> $ pop2015_totale <dbl> 785, 242, 14631, 1652, 115, 2722, 765, 351, 1152, 401, …
Les fonctions cog_df_to_list()
et
cog_list_to_df()
permettent de passer d’un format à
l’autre.
pop2015_cogifiee_df <- cog_list_to_df(pop2015_cogifiee_liste)
tibble::glimpse(pop2015_cogifiee_df)
#> Rows: 36,283
#> Columns: 6
#> $ TypeZone <fct> Communes, Communes, Communes, Communes, Communes, Commu…
#> $ Zone <fct> "L'Abergement-Clémenciat", "L'Abergement-de-Varey", "Am…
#> $ CodeZone <fct> 01001, 01002, 01004, 01005, 01006, 01007, 01008, 01009,…
#> $ pop2015 <dbl> 767, 241, 14127, 1619, 109, 2615, 747, 342, 1133, 390, …
#> $ pop2015_a_part <dbl> 18, 1, 504, 33, 6, 107, 18, 9, 19, 11, 4, 3, 94, 12, 5,…
#> $ pop2015_totale <dbl> 785, 242, 14631, 1652, 115, 2722, 765, 351, 1152, 401, …
filtrer_cog()
va permettre, sur une table cogifiée
d’appliquer un filtre pour ne garder que certains zonages.
Exemple, si je ne souhaite garder que les données relatives à la région Pays de la Loire.
pop2015_cogifiee_r52 <- filtrer_cog(pop2015_cogifiee, reg = "52")
tibble::glimpse(pop2015_cogifiee_r52)
#> Rows: 1,307
#> Columns: 6
#> $ TypeZone <fct> Communes, Communes, Communes, Communes, Communes, Commu…
#> $ Zone <fct> "Abbaretz", "Aigrefeuille-sur-Maine", "Ancenis-Saint-Gé…
#> $ CodeZone <fct> 44001, 44002, 44003, 44005, 44006, 44007, 44009, 44010,…
#> $ pop2015 <dbl> 2042, 3700, 10403, 6666, 1801, 2525, 8698, 2974, 2834, …
#> $ pop2015_a_part <dbl> 28, 104, 481, 86, 31, 57, 224, 100, 47, 38, 63, 194, 14…
#> $ pop2015_totale <dbl> 2070, 3804, 10884, 6752, 1832, 2582, 8922, 3074, 2881, …
On peut vouloir garder les informations pour le total des autres régions ou le total France entière.
pop2015_cogifiee_r52 <- filtrer_cog(pop2015_cogifiee, reg = "52", garder_supra = ">=")
tibble::glimpse(pop2015_cogifiee_r52)
#> Rows: 1,324
#> Columns: 6
#> $ TypeZone <fct> Communes, Communes, Communes, Communes, Communes, Commu…
#> $ Zone <fct> "Abbaretz", "Aigrefeuille-sur-Maine", "Ancenis-Saint-Gé…
#> $ CodeZone <fct> 44001, 44002, 44003, 44005, 44006, 44007, 44009, 44010,…
#> $ pop2015 <dbl> 2042, 3700, 10403, 6666, 1801, 2525, 8698, 2974, 2834, …
#> $ pop2015_a_part <dbl> 28, 104, 481, 86, 31, 57, 224, 100, 47, 38, 63, 194, 14…
#> $ pop2015_totale <dbl> 2070, 3804, 10884, 6752, 1832, 2582, 8922, 3074, 2881, …