diff --git a/data-raw/AT/create_MortalityTables_Austria_Population.R b/data-raw/AT/create_MortalityTables_Austria_Population.R index ba7e20f1c2cb1337ffe7f923a473f70bf658bc0f..ce15181050b32e3bb4aeaffb1eda96fce76f1e33 100644 --- a/data-raw/AT/create_MortalityTables_Austria_Population.R +++ b/data-raw/AT/create_MortalityTables_Austria_Population.R @@ -1,6 +1,6 @@ -############################################################################### -# Skript to generate Austrian census mortality table objects -############################################################################### +##############################################################################h# +# Skript to generate Austrian census mortality table objects #### +##############################################################################h# library(MortalityTables) library(readxl) library(dplyr) @@ -11,9 +11,9 @@ library(here) library(rlang) -############################################################################### -### Volkszählungen Österreich -############################################################################### +##############################################################################h# +### Volkszählungen Österreich #### +##############################################################################h# censusfile = here("data-raw", "AT", "Population", "ausfuehrliche_allgemeine_und_ausgeglichene_sterbetafeln_186871_bis_201012_.xlsx") censusfile.out = here("data", "mort.AT.census.RData") @@ -147,9 +147,9 @@ save( -############################################################################### -### jährlich fortgeschriebene Sterbetafeln -############################################################################### +##############################################################################h# +### jährlich fortgeschriebene Sterbetafeln #### +##############################################################################h# library(reshape2) library(openxlsx) @@ -210,23 +210,18 @@ obstable = function(data, sex = "m") { mort.AT.observed = array( - data = c(mortalityTable.NA), + data = c( + obstable(AT.pop.obs, sex = "m"), + obstable(AT.pop.obs, sex = "w"), + obstable(AT.pop.obs, sex = "u") + ), dim = c(3), dimnames = list(Geschlecht = c("m", "w", "u")) ) -mort.AT.observed[["m"]] = obstable(AT.pop.obs, sex = "m") -mort.AT.observed[["w"]] = obstable(AT.pop.obs, sex = "w") -mort.AT.observed[["u"]] = obstable(AT.pop.obs, sex = "u") -mort.AT.observed.male = mort.AT.observed[["m"]] -mort.AT.observed.female = mort.AT.observed[["w"]] -mort.AT.observed.unisex = mort.AT.observed[["u"]] save( mort.AT.observed, - mort.AT.observed.male, - mort.AT.observed.female, - mort.AT.observed.unisex, file = abridgedfile.out ) @@ -235,10 +230,10 @@ save( -############################################################################### -### Bevölkerungsprognose bis 2080 (mittleres Szenario) -### Datenquelle: Statistik Austria -############################################################################### +##############################################################################h# +### Bevölkerungsprognose bis 2080 (mittleres Szenario) #### +### Datenquelle: Statistik Austria ##h# +##############################################################################h# library(openxlsx) @@ -248,112 +243,107 @@ forecastfile.out = here::here("data", "mort.AT.forecast.RData") AT.pop.fc.M = openxlsx::read.xlsx(forecastfile, startRow = 1, rows = c(1,3:103), rowNames = TRUE) AT.pop.fc.F = openxlsx::read.xlsx(forecastfile, startRow = 1, rows = c(1,105:206), rowNames = TRUE) -mort.AT.forecast.male = mortalityTable.observed( - name = "Österreich Männer (mittl. Sz.)", - baseYear = 2014, - deathProbs = AT.pop.fc.M, - ages = as.numeric(rownames(AT.pop.fc.M)), - years = as.numeric(colnames(AT.pop.fc.M)), - data = list( - dim = list( - table = "Bevölkerungsprognose Österreich (mittl. Szenario)", - sex = "m", - collar = "Gesamtbevölkerung", - type = "Bevölkerungsprognose", - country = "Österreich", - data = "official", - year = "2014-2080") - ) -) -mort.AT.forecast.female = mortalityTable.observed( - name = "Österreich Frauen (mittl. Sz.)", - baseYear = 2014, - deathProbs = AT.pop.fc.F, - ages = as.numeric(rownames(AT.pop.fc.F)), - years = as.numeric(colnames(AT.pop.fc.F)), - data = list( - dim = list( - table = "Bevölkerungsprognose Österreich (mittl. Szenario)", - sex = "w", - collar = "Gesamtbevölkerung", - type = "Bevölkerungsprognose", - country = "Österreich", - data = "official", - year = "2014-2080") - ) -) mort.AT.forecast = array( - data = c(mortalityTable.NA), + data = c( + mortalityTable.observed( + name = "Österreich Männer (mittl. Sz.)", + baseYear = 2014, + deathProbs = AT.pop.fc.M, + ages = as.numeric(rownames(AT.pop.fc.M)), + years = as.numeric(colnames(AT.pop.fc.M)), + data = list( + dim = list( + table = "Bevölkerungsprognose Österreich (mittl. Szenario)", + sex = "m", + collar = "Gesamtbevölkerung", + type = "Bevölkerungsprognose", + country = "Österreich", + data = "official", + year = "2014-2080") + ) + ), + + mortalityTable.observed( + name = "Österreich Frauen (mittl. Sz.)", + baseYear = 2014, + deathProbs = AT.pop.fc.F, + ages = as.numeric(rownames(AT.pop.fc.F)), + years = as.numeric(colnames(AT.pop.fc.F)), + data = list( + dim = list( + table = "Bevölkerungsprognose Österreich (mittl. Szenario)", + sex = "w", + collar = "Gesamtbevölkerung", + type = "Bevölkerungsprognose", + country = "Österreich", + data = "official", + year = "2014-2080") + ) + ) + ), dim = c(2), dimnames = list(Geschlecht = c("m", "w")) ) -mort.AT.forecast[["m"]] = mort.AT.forecast.male -mort.AT.forecast[["w"]] = mort.AT.forecast.female -############################################################################### -# Forecast using a trend derived from the Statistik Austria data +##############################################################################h# +# Forecast using a trend derived from the Statistik Austria data ##h# lambda.forecast = function(qx) { logq = log(qx) rowMeans(logq[,-ncol(logq)] - logq[,-1]) } -mort.AT.forecast.male.trend = mortalityTable.trendProjection( - name = "Österreich Männer (mittl. Sz.)", - baseYear = 2014, - deathProbs = AT.pop.fc.M[,1], - trend = lambda.forecast(AT.pop.fc.M), - ages = as.numeric(rownames(AT.pop.fc.M)), - data = list( - dim = list( - table = "Bevölkerungsprognose Österreich (mittl. Szenario)", - sex = "m", - collar = "Gesamtbevölkerung", - type = "Bevölkerungsprognose", - country = "Österreich", - data = "official", - year = "2014-2080") - ) -) -mort.AT.forecast.female.trend = mortalityTable.trendProjection( - name = "Österreich Frauen (mittl. Sz.)", - baseYear = 2014, - deathProbs = AT.pop.fc.F[,1], - trend = lambda.forecast(AT.pop.fc.F), - ages = as.numeric(rownames(AT.pop.fc.F)), - data = list( - dim = list( - table = "Bevölkerungsprognose Österreich (mittl. Szenario)", - sex = "w", - collar = "Gesamtbevölkerung", - type = "Bevölkerungsprognose", - country = "Österreich", - data = "official", - year = "2014-2080") - ) -) - mort.AT.forecast.trend = array( - data = c(mortalityTable.NA), + data = c( + mortalityTable.trendProjection( + name = "Österreich Männer (mittl. Sz.)", + baseYear = 2014, + deathProbs = AT.pop.fc.M[,1], + trend = lambda.forecast(AT.pop.fc.M), + ages = as.numeric(rownames(AT.pop.fc.M)), + data = list( + dim = list( + table = "Bevölkerungsprognose Österreich (mittl. Szenario)", + sex = "m", + collar = "Gesamtbevölkerung", + type = "Bevölkerungsprognose", + country = "Österreich", + data = "official", + year = "2014-2080") + ) + ), + + mortalityTable.trendProjection( + name = "Österreich Frauen (mittl. Sz.)", + baseYear = 2014, + deathProbs = AT.pop.fc.F[,1], + trend = lambda.forecast(AT.pop.fc.F), + ages = as.numeric(rownames(AT.pop.fc.F)), + data = list( + dim = list( + table = "Bevölkerungsprognose Österreich (mittl. Szenario)", + sex = "w", + collar = "Gesamtbevölkerung", + type = "Bevölkerungsprognose", + country = "Österreich", + data = "official", + year = "2014-2080") + ) + ) + ), dim = c(2), dimnames = list(Geschlecht = c("m", "w")) ) -mort.AT.forecast.trend[["m"]] = mort.AT.forecast.male.trend -mort.AT.forecast.trend[["w"]] = mort.AT.forecast.female.trend -############################################################################### +##############################################################################h# # Save to data save( mort.AT.forecast, - mort.AT.forecast.male, - mort.AT.forecast.female, mort.AT.forecast.trend, - mort.AT.forecast.male.trend, - mort.AT.forecast.female.trend, file = forecastfile.out ) @@ -361,10 +351,10 @@ save( -############################################################################### -### MCMC fit (derived during creation of the AVÖ 2018-P by Jonas Hirz) +##############################################################################h# +### MCMC fit (derived during creation of the AVÖ 2018-P by Jonas Hirz) #### ### Datenquelle: Statistik Austria, Method: Jonas Hirz -############################################################################### +##############################################################################h# library(pracma) MCMCfile = here::here("data-raw", "AT", "Population", "Austria_Population_MCMC2018.csv") diff --git a/data/VU.Gesamtbestand.Detail.RData b/data/VU.Gesamtbestand.Detail.RData index a980f0a0b9244756001ed45bdc870fb76c60461a..ccfa0ba78e693612e0578eeaad29aeace94e3efd 100644 Binary files a/data/VU.Gesamtbestand.Detail.RData and b/data/VU.Gesamtbestand.Detail.RData differ diff --git a/data/VU.Gesamtbestand.RData b/data/VU.Gesamtbestand.RData index 3c976d9e9c528ac2402f01155272d820fefe591a..8657b019c2f323b25917dadb437b175b3ff2b6eb 100644 Binary files a/data/VU.Gesamtbestand.RData and b/data/VU.Gesamtbestand.RData differ diff --git a/data/VU.Gesamtbestand.Storno.RData b/data/VU.Gesamtbestand.Storno.RData index de73e75189b8084f2e018c1098d7caa51f2e8a6a..1ca4440cf99857083a7938df43ef0c4baf1e5d20 100644 Binary files a/data/VU.Gesamtbestand.Storno.RData and b/data/VU.Gesamtbestand.Storno.RData differ diff --git a/data/mort.AT.MCMC.RData b/data/mort.AT.MCMC.RData index ed52aefe1ddbc7c27440f2fbd0c4485099eebfcf..3791d139852f48db56021a462f870ea69d68f42b 100644 Binary files a/data/mort.AT.MCMC.RData and b/data/mort.AT.MCMC.RData differ diff --git a/data/mort.AT.census.RData b/data/mort.AT.census.RData index 3759abc88be45a4d938b1a26012b30acb547817d..6c777cc386e13290036ff1dc1d673c944e14874b 100644 Binary files a/data/mort.AT.census.RData and b/data/mort.AT.census.RData differ diff --git a/data/mort.AT.forecast.RData b/data/mort.AT.forecast.RData index f8a55882c110c2408798be2934548169da63e89a..0a5d29cf7c8f87aa7216efdde98055767aeb3343 100644 Binary files a/data/mort.AT.forecast.RData and b/data/mort.AT.forecast.RData differ diff --git a/data/mort.AT.observed.RData b/data/mort.AT.observed.RData index 7e241678b4c56f5ce0519ec963bbb0990b4ec893..2cdc264ed861d1636a822a06f580a0758cbb2080 100644 Binary files a/data/mort.AT.observed.RData and b/data/mort.AT.observed.RData differ