Functie die indicatoren corrigeert voor grenswijzigingen
vertaal_naar_peiljaar_limSolve.Rd
Deze functie corrigeert indicatoren op basis van model.2. Het is
nodig om zelf het type indicator aan te geven ('aandeel' of 'aantal'). Het
wordt geadviseerd gebruik te maken van de generieke wrapper functie
wrapper_vertaal_naar_peiljaar
. Deze functie is gebasseerd het
oplossen van een stelsel vergelijkingen met behulp van de functie
lsei
.
Usage
vertaal_naar_peiljaar_limSolve(
df,
oorspronkelijk_jaar,
peiljaar,
type_kolommen = "aantal",
regionaalniveau = "wijk"
)
Arguments
- df
dataframe met features op wijkniveau op basis van wijkindeling van 1 bepaald jaar (oorspronkelijk_jaar) en peiljaar.
- oorspronkelijk_jaar
jaar waarin de features in df zijn gegeven
- peiljaar
jaar waarnaartoe de features moeten worden omgezet
- type_kolommen
welk type is de kolom, 'aantal' of 'aandeel'?
- regionaalniveau
op welk regionaalniveau moet de omzetting plaats vinden? Keuze uit 'wijk' en 'gemeente'.
Examples
library(grenswijzigen)
library(cbsodataR)
library(dplyr)
# laad de kerncijfers per wijk voor 2017 en 2018
df <- rbind(
cbs_get_data(
id="83765NED",
WijkenEnBuurten = has_substring("WK"),
select=c("WijkenEnBuurten", "AantalInwoners_5", "k_65JaarOfOuder_12")
) %>% mutate(
jaar=2017
),
cbs_get_data(
id="84286NED",
WijkenEnBuurten = has_substring("WK"),
select=c("WijkenEnBuurten", "AantalInwoners_5", "k_65JaarOfOuder_12")
) %>% mutate(
jaar=2018
)
) %>% mutate(
gwb_code=trimws(gsub("^WK", "", WijkenEnBuurten))
) %>% select(-WijkenEnBuurten)
# laat de wijken in Wageningen zien (gwb_code begint met 0289)
print(filter(df, grepl("^0289", gwb_code)))
#> # A tibble: 14 × 4
#> AantalInwoners_5 k_65JaarOfOuder_12 jaar gwb_code
#> <int> <int> <dbl> <chr>
#> 1 33885 5125 2017 028900
#> 2 4570 800 2017 028901
#> 3 4725 440 2018 028901
#> 4 2480 5 2018 028902
#> 5 2750 540 2018 028903
#> 6 2085 360 2018 028904
#> 7 3175 30 2018 028905
#> 8 6895 1435 2018 028906
#> 9 5190 750 2018 028907
#> 10 2505 560 2018 028908
#> 11 3530 505 2018 028909
#> 12 2525 710 2018 028910
#> 13 1175 405 2018 028911
#> 14 1370 385 2018 028912
#
#
# Omzetten van de data van 2017 naar 2018
df_omgezet <- vertaal_naar_peiljaar_limSolve(
df,
oorspronkelijk_jaar = 2017,
peiljaar = 2018,
type_kolommen = "aantal"
)
#> [1] "Aantal rijen omgezette data-frame: 3085"
# laat de omgezette wijken in Wageningen zien
print(filter(df_omgezet, grepl("^0289", gwb_code)))
#> AantalInwoners_5 k_65JaarOfOuder_12 jaar gwb_code berekend
#> 581 4729.277 422.893689 2017 028901 TRUE
#> 5910 2480.632 2.473616 2017 028902 TRUE
#> 60 2751.938 532.249797 2017 028903 TRUE
#> 61 2086.185 355.258833 2017 028904 TRUE
#> 6210 3177.715 19.140689 2017 028905 TRUE
#> 635 6916.329 1349.684404 2017 028906 TRUE
#> 6410 5198.683 715.267173 2017 028907 TRUE
#> 6510 2507.733 549.068773 2017 028908 TRUE
#> 6610 3533.583 490.668989 2017 028909 TRUE
#> 6710 2527.318 700.728511 2017 028910 TRUE
#> 6810 1175.408 403.367688 2017 028911 TRUE
#> 6910 1370.201 384.197838 2017 028912 TRUE