knitr::opts_chunk$set( collapse = TRUE, comment = "#>" ) library(SMMT)
In Switzerland, the landscape of municipalities is changing rapidly mainly due to mergers. The Swiss Municipality Merger Tool (SMMT) automatically detects these mutations and maps municipalities of an old state to municipalities of a new state. The aim of this vignette is to illustrate how to use the functionality of the SMMT.
This figure shows the decrease in municipalities over time:
This figure shows the mutations for the decade 2010-2019:
1) Download & unpack the Swiss municipality inventory from the Federal Statistical Office website.
path_inventory_xml <- download_municipality_inventory(path = getwd())
2) Import the inventory into the workspace
mutations_object <- import_CH_municipality_inventory(file_path = path_inventory_xml) mutations <- mutations_object$mutations # Alternative: Use a local available version (e.g. Version from January 1st, 2018): file_path_inventory_xml <- "path/to/eCH0071_180101.xml" mutations_object <- import_CH_municipality_inventory(file_path = file_path_inventory_xml) mutations <- mutations_object$mutations
1) Define the old state and the new state. Example:
old_state <- as.Date("1961-01-01") new_state <- as.Date("1963-01-01")
2) Get mapping table
mutations <- structure(list(hist_id = c(11227L, 11240L, 13189L), district_hist_id = c(10025L, 10025L, 10025L), kanton_abbr = c("AG", "AG", "AG"), bfs_nr = c(4025L, 4021L, 4021L), name = c("Daettwil", "Baden", "Baden"), admission_nr = c(1000L, 1000L, 1004L), admission_mode = c(20L, 20L, 26L), admission_date = structure(c(-3653, -3653, -2922), class = c("Date")), abolition_nr = c(1004L, 1004L, NA), abolition_mode = c(29L, 26L, NA), abolition_date = structure(c(-2923, -2923, NA), class = c("Date")), change_date = structure(c(-2923, -2923, -2922), class = c("Date"))), row.names = c(NA, -3L), class = c("tbl_df", "tbl", "data.frame"))
mapping_object <- map_old_to_new_state(mutations, old_state, new_state) mapping_table <- mapping_object$mapped
Excerpt of mapping table:
|bfs_nr_new | name_new | bfs_nr_old | name_old | |-----|------|-----|-----| |4021 | Baden | 4021 | Baden | |4021 | Baden | 4025 | Daettwil|
If of relevance, use the information about municipalities which could not be mapped (e.g. due to secessions). For example, if you need to exclude these elements from a dataset.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.