data(eusilcS) # load sample data
data(eusilcP) # population data
inp <- specifyInput(data=eusilcS, hhid="db030", hhsize="hsize", strata="db040", weight="db090")
synthPop <- simStructure(data=inp, method="direct", basicHHvars=c("age", "rb090"))
synthPop <- simCategorical(synthPop, additional=c("pl030", "pb220a"), method="multinom")
# add margins
margins <- as.data.frame(
xtabs(rep(1, nrow(eusilcP)) ~ eusilcP$region + eusilcP$gender + eusilcP$citizenship))
colnames(margins) <- c("db040", "rb090", "pb220a", "freq")
synthPop <- addKnownMargins(synthPop, margins)
# apply simulated annealing
synthPop_adj <- calibPop(synthPop, split="db040", temp=1, eps.factor=0.1)Run the code above in your browser using DataLab