3.1. Script 1: Country/Version-Specific Setup File

3.1.1. Version: “Imaginary Country” Start Year 2000

This setup file generates all country-specific objects used by the set of R data analysis scripts estimating and generating model parameters and writing all parameter files of DYNAMIS-POP. The output of this script is an image file “globals_for_analysis.RData” which is read by each of the module-specific analysis scripts. This is the only R script which has to be adapted when porting the model to another country context.

The script produces a set of global objects including:

  • Four data frame objects corresponding with the four micro-data files required.
  • File names and locations for all parameter files and the starting population
  • Some global variables like the year of the starting population and time-sensitive cut-off points for data analysis
  • Information on a shape file for geographical map output
  • Some target values for default scenarios
  • Some country-specific labels (like names of regions) for analysis graphs
  • The file location of demographic macro-scenario csv files (e.g. DemProj projections)

3.1.2. Code:

####################################################################################################
# 
#  DYNAMIS-POP Parameter Generation File 1 - Generate all country-specific R objects
#  This file has to be run before performing all other parameter generation steps
#  Last Update: Martin Spielauer 2019-11-28
#
####################################################################################################

####################################################################################################
# Clear work space and load required packages
####################################################################################################

rm(list=ls())
library(haven)
library(data.table)

g_reweight <- 100

####################################################################################################
# NEW 
####################################################################################################


g_newstartpop_file <- "../Data/ABC_2000/Parameters/NewStartingPopulation_ABC_2000.csv"


####################################################################################################
# Data Table of Residents: g_residents_dat
####################################################################################################

g_residents_dat <- read.csv("../Data/ABC_2000/AnalysisData/Residents_ABC_2000.csv")
g_residents_dat$M_AGEMAR[g_residents_dat$M_AGEMAR==999] <- NA
g_residents_dat$M_AGEBIR[g_residents_dat$M_AGEBIR==999] <- NA

####################################################################################################
# Data Table of Emigrants: g_emigrants_dat
####################################################################################################

g_emigrants_dat <- read.csv("../Data/ABC_2000/AnalysisData/Emigrants_ABC_2000.csv")

####################################################################################################
# Data Table of Births: g_births_dat
####################################################################################################

g_births_dat <-  read.csv("../Data/ABC_2000/AnalysisData/Births_ABC_2000.csv")
g_births_dat$M_B01[g_births_dat$M_B01==9999] <- NA
g_births_dat$M_B02[g_births_dat$M_B02==9999] <- NA
g_births_dat$M_B03[g_births_dat$M_B03==9999] <- NA
g_births_dat$M_B04[g_births_dat$M_B04==9999] <- NA
g_births_dat$M_B05[g_births_dat$M_B05==9999] <- NA
g_births_dat$M_B06[g_births_dat$M_B06==9999] <- NA
g_births_dat$M_B07[g_births_dat$M_B07==9999] <- NA
g_births_dat$M_B08[g_births_dat$M_B08==9999] <- NA
g_births_dat$M_B09[g_births_dat$M_B09==9999] <- NA
g_births_dat$M_B10[g_births_dat$M_B10==9999] <- NA
g_births_dat$M_B11[g_births_dat$M_B11==9999] <- NA
g_births_dat$M_B12[g_births_dat$M_B12==9999] <- NA
g_births_dat$M_B13[g_births_dat$M_B13==9999] <- NA
g_births_dat$M_B14[g_births_dat$M_B14==9999] <- NA
g_births_dat$M_MAR[g_births_dat$M_MAR==9999] <- NA

####################################################################################################
# Data Table of Children: g_children_dat
####################################################################################################

g_children_dat <-read.csv("../Data/ABC_2000/AnalysisData/Children_ABC_2000.csv")
g_children_dat$M_DEATH[g_children_dat$M_DEATH==9999] <- NA

####################################################################################################
# Country Shape file for geographical maps on district level
# Available country shape files frequently put districts in aphabetical order which typically does  
# not coincide with coding in the micro data: g_shape_display_order can be used to define the order
####################################################################################################

g_shapes <- "../Data/ABC_2000/Shapes/shape_abc.shp"
g_shape_display_order <- c(0,1,2,3,4,5,6,7,8,9,10,11)

####################################################################################################
# Census Year: g_census_year. This is the year of the starting population 
####################################################################################################

g_census_year <- 2000

####################################################################################################
#  Settings for starting population analysis an parameters 
####################################################################################################

g_startpop_file <- "../Data/ABC_2000/Parameters/StartingPopulation_ABC_2000.csv"
g_startpop_name <- "StartingPopulation_ABC_2000.csv"
g_para_startpop <- "../Data/ABC_2000/Parameters/StartingPopulation_ABC_2000.dat"

####################################################################################################
# Settings for primary education analysis and parameters
####################################################################################################

g_para_primaryeduc <- "../Data/ABC_2000/Parameters/PrimaryEducation_ABC_2000.dat"
g_para_primaryeducrefined <- "../Data/ABC_2000/Parameters/PrimaryEducationRefined_ABC_2000.dat"
g_para_primaryeductrack <- "../Data/ABC_2000/Parameters/PrimaryEducationGrades_ABC_2000.dat"

g_school_season_end <- 0.5
g_school_season_start <- 0.66666
g_school_entry  <- 6

####################################################################################################
# Settings for analysis microdata output
####################################################################################################

g_para_analysisoutput <- "../Data/ABC_2000/Parameters/AnalysisDataOutput_ABC_2000.dat"

####################################################################################################
# Settings for migration analysis and parameters
####################################################################################################

g_para_migration <- "../Data/ABC_2000/Parameters/Migration_ABC_2000.dat"

####################################################################################################
# Settings for child vaccinatin parameters
####################################################################################################

g_children_dat$m_ethnov <- 0
g_children_dat$m_ethnov[g_children_dat$M_ETHNO == 0] <- 0 
g_children_dat$m_ethnov[g_children_dat$M_ETHNO == 1] <- 4 
g_children_dat$m_ethnov[g_children_dat$M_ETHNO == 2] <- 2 
g_children_dat$m_ethnov[g_children_dat$M_ETHNO == 3] <- 0 
g_children_dat$m_ethnov[g_children_dat$M_ETHNO == 4] <- 1 
g_children_dat$m_ethnov[g_children_dat$M_ETHNO == 5] <- 3 
g_children_dat$m_ethnov[g_children_dat$M_ETHNO == 6] <- 4 
g_children_dat$m_ethnov[g_children_dat$M_ETHNO == 7] <- 5 
g_children_dat$m_ethnov[g_children_dat$M_ETHNO == 8] <- 6 
g_children_dat$m_ethnov[g_children_dat$M_ETHNO == 9] <- 6 

g_para_childvacc <- "../Data/ABC_2000/Parameters/ChildVaccination_ABC_2000.dat"

####################################################################################################
# Settings for immigration analysis and parameters
####################################################################################################

g_para_immigration <- "../Data/ABC_2000/Parameters/Immigration_ABC_2000.dat"
g_immigration_number_growth <- 1.01

####################################################################################################
# Settings for emigration analysis and parameters
####################################################################################################

g_para_emigration <- "../Data/ABC_2000/Parameters/Emigration_ABC_2000.dat"

####################################################################################################
# Settings for first marriage analysis and parameters
####################################################################################################

g_para_marriage <- "../Data/ABC_2000/Parameters/Marriage_ABC_2000.dat"

# First Marriage Scenario future target values Coal McNeil model
target_c_low    <- .95
target_c_med    <- .90
target_c_hig    <- .83

target_a0_low   <- 15
target_a0_med   <- 16.5
target_a0_hig   <- 18

target_av_low   <- 19
target_av_med   <- 21
target_av_hig   <- 25

####################################################################################################
# Settings for first birth analysis and parameters
####################################################################################################

g_para_firstbirths <- "../Data/ABC_2000/Parameters/FirstBirths_ABC_2000.dat"

####################################################################################################
# Settings for higher order births analysis and parameters
####################################################################################################

g_para_higherbirths <- "../Data/ABC_2000/Parameters/HigherBirths_ABC_2000.dat"
g_birth_timecuts <- c(1980,1990)

####################################################################################################
# Settings for child mortality analysis and parameters
####################################################################################################

g_para_childmort <-  "../Data/ABC_2000/Parameters/ChildMortality_ABC_2000.dat"
g_childmort_timecuts <- c(1970,1980,1990)

####################################################################################################
# Settings for ethnicity analysis and parameters
####################################################################################################

g_para_ethnicity <-  "../Data/ABC_2000/Parameters/Ethnicity_ABC_2000.dat"

####################################################################################################
# Settings for secondary education analysis and parameters
####################################################################################################


g_para_secondary <-  "../Data/ABC_2000/Parameters/Secondary_ABC_2000.dat"

####################################################################################################
# Settings for school planning analysis and parameters
####################################################################################################

g_para_schoolplanning <-  "../Data/ABC_2000/Parameters/SchoolPlanning_ABC_2000.dat"

####################################################################################################
# Settings for general settings parameters
####################################################################################################

g_para_settings <-  "../Data/ABC_2000/Parameters/GeneralSettings_ABC_2000.dat"

####################################################################################################
# Settings for macro parameters of demographic modules
# This includes file locations of 4 required csv files containing demographic projections
####################################################################################################

g_para_basemortality <-  "../Data/ABC_2000/Parameters/DemProj_ABC_2000.dat" <-  "../Data/ABC_2000/Parameters/BaseMortality_ABC_2000.dat"
g_para_basefertility <-  "../Data/ABC_2000/Parameters/BaseFertility_ABC_2000.dat"
# removed g_para_demproj    <-  "../Data/ABC_2000/Parameters/DemProj_ABC_2000.dat"
g_sexratio        <- 104
dp_expectancy_dat <- as.matrix(as.vector(t(read.csv("../Data/ABC_2000/DemographicProjections/lifeexpectancy_abc_2000.csv", header=FALSE))))
dp_mortality_dat  <- as.matrix(as.vector(t(read.csv("../Data/ABC_2000/DemographicProjections/mortality_abc_2000.csv", header=FALSE))))
dp_tfr_dat        <- as.matrix(read.csv("../Data/ABC_2000/DemographicProjections/tfr_abc_2000.csv", header=FALSE))
dp_fertility_dat  <- as.matrix(as.vector(t(read.csv("../Data/ABC_2000/DemographicProjections/fertility_abc_2000.csv", header=FALSE))))

####################################################################################################
# 5 Selected regions and districts incl labels for analysis graphs
# This are typically the 5 largest regions and districts including the Capital
####################################################################################################

g_selreg1_label  <- "Far-West"
g_selreg2_label  <- "West"
g_selreg3_label  <- "Central"
g_selreg4_label  <- "Capital"
g_selreg5_label  <- "East"

g_selreg1_val    <- 0
g_selreg2_val    <- 1
g_selreg3_val    <- 2
g_selreg4_val    <- 3
g_selreg5_val    <- 4

g_seldist1_label <- "Far-West-Highland"
g_seldist2_label <- "West-Highland"
g_seldist3_label <- "Central-Flatland"
g_seldist4_label <- "Capital"
g_seldist5_label <- "East-Lowland"

g_seldist1_val   <- 0
g_seldist2_val   <- 3
g_seldist3_val   <- 7
g_seldist4_val   <- 10
g_seldist5_val   <- 11

####################################################################################################
# Settings for HCI related parameters
####################################################################################################

g_para_hci       <-  "../Data/ABC_2000/Parameters/HCI_ABC_2000.dat"
g_para_stunting  <-  "../Data/ABC_2000/Parameters/Stunting_ABC_2000.dat"
g_para_preschool <-  "../Data/ABC_2000/Parameters/PreSchool_ABC_2000.dat"

####################################################################################################
# Save global objects
####################################################################################################

save.image(file="globals_for_analysis.RData")