Simulate components of continuous variables of population data
Description
Simulate components of continuous variables of population data by resampling fractions from survey data. The continuous variable to be split and any categorical conditioning variables need to be simulated beforehand.
Usage
1 2 3 4  simComponents(simPopObj, total = "netIncome", components = c("py010n",
"py050n", "py090n", "py100n", "py110n", "py120n", "py130n", "py140n"),
conditional = c(getCatName(total), "pl030"),
replaceEmpty = c("sequential", "min"), seed)

Arguments
simPopObj 
a 
total 
a character string specifying the continuous variable of dataP that should be split into components. Currently, only one variable can be split at a time. 
components 
a character vector specifying the components in

conditional 
an optional character vector specifying categorical
conditioning variables for resampling. The fractions occurring in

replaceEmpty 
a character string; if 
seed 
optional; an integer value to be used as the seed of the random number generator, or an integer vector containing the state of the random number generator to be restored. 
Value
An object of class simPopObj
containing survey
data as well as the simulated population data including the components of
the continuous variable specified by total
and components
.
Note
The basic household structure, any categorical conditioning variables
and the continuous variable to be split need to be simulated beforehand with
the functions simStructure
, simCategorical
and
simContinuous
.
Author(s)
Stefan Kraft and Andreas Alfons and Bernhard Meindl
See Also
simStructure
, simCategorical
,
simContinuous
, simEUSILC
Examples
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30  data(eusilcS)
## Not run:
## approx. 20 seconds computation time
inp < specifyInput(data=eusilcS, hhid="db030", hhsize="hsize",
strata="db040", weight="db090")
simPopObj < simStructure(data=inp, method="direct",
basicHHvars=c("age", "rb090", "hsize", "pl030", "pb220a"))
simPopObj < simContinuous(simPopObj, additional = "netIncome",
regModel = ~rb090+hsize+pl030+pb220a+hsize,
method="multinom", upper=200000, equidist=FALSE, nr_cpus=1)
# categorize net income for use as conditioning variable
sIncome < manageSimPopObj(simPopObj, var="netIncome", sample=TRUE, set=FALSE)
sWeight < manageSimPopObj(simPopObj, var="rb050", sample=TRUE, set=FALSE)
pIncome < manageSimPopObj(simPopObj, var="netIncome", sample=FALSE, set=FALSE)
breaks < getBreaks(x=unlist(sIncome), w=unlist(sWeight), upper=Inf, equidist=FALSE)
simPopObj < manageSimPopObj(simPopObj, var="netIncomeCat", sample=TRUE,
set=TRUE, values=getCat(x=unlist(sIncome), breaks))
simPopObj < manageSimPopObj(simPopObj, var="netIncomeCat", sample=FALSE,
set=TRUE, values=getCat(x=unlist(pIncome), breaks))
# simulate net income components
simPopObj < simComponents(simPopObj=simPopObj, total="netIncome",
components=c("py010n","py050n","py090n","py100n","py110n","py120n","py130n","py140n"),
conditional = c("netIncomeCat", "pl030"), replaceEmpty = "sequential", seed=1 )
class(simPopObj)
## End(Not run)
