Fertility models for ASFR approximation
Usage
fert.approx(
fx,
age,
model,
start = NULL,
se = FALSE,
se.method = c("asymptotic", "bootstrap"),
alpha = 0.05,
bn = 1000
)Arguments
- fx
Numeric vector of age specific fertility rates.
- age
Numeric vector of ages.
- model
Character. Model name to be estimated. Now "Hadwiger", "Gamma", "Brass" and "Beta" are supported.
- start
Numeric vector with user-specific values of parameters for optimization. Default is
NULL(choose automatically)- se
Logical. Should variance for ASFR approximation be calculated. Default is
FALSEfor no uncertainty estimates.- se.method
Character. Method for uncertainty estimation. Can be
"asymptotic"(by default) or"bootstrap".- alpha
Numeric. Used if
se = TRUE, the level of uncertainty. By default,alpha = 0.05for 95% CI.- bn
Numeric. Used if
se = TRUEandse.method = "bootstrap", number of bootstrap samples. By default,bn = 1000.
Value
A list of class fert.approx with two components: model, a list
describing the fitted fertility model (type, fitted params, rmse,
and, if se = TRUE, variance-covariance matrix vcov and parameter
percentile intervals prc); and predicted, a data frame with observed
and fitted age-specific fertility rates. When se = TRUE, predicted
also includes standard errors and intervals.
Details
This function runs least squares optimization (using default optim) of the selected fertility function with 1e-06 as tolerance parameter.
\(f_x\) is age-specific fertility rate for age \(x\).
Hadwiger model
The model is as follows: $$f_x = \frac{ab}{c} \frac{c}{x}^{3/2} exp[-b^2(\frac{c}{x}+\frac{x}{c}-2)]$$ where \(a,b,c\) are estimated parameters that do not have demographic interpretation. Sometimes \(c\) is interpreted as mean age at childbearing.
Gamma model
The model is as follows: $$f_x = \frac{R}{\Gamma(b)c^b}(x-d)^{b-1} exp[-(\frac{x-d}{c})]$$ where \(R,b,c,d\) are estimated parameters. \(\Gamma\) is gamma function. \(R\) can be interpreted as fertility level (TFR) and \(d\) as mean age at childbearing.
Brass model
The model is as follows: $$f_x = c(x-d)(d+w-x)^2$$ where \(c,d,w\) are estimated parameters.
Beta model
The model is as follows: $$f_x = \frac{R}{B(A,C)}(\beta - \alpha)^{-(A+C-1)}(x-\alpha)^{(A-1)}(\beta-x)^{(B-1)}$$ where \(B(A, C)\) is beta function, \(R, \beta, \alpha\) are estimated parameters, which can be interpreted as fertility level (TFR) and max and min age of childbearing respectively. \(A,C\) are $$C = (\frac{(v - \alpha)(\beta - v)}{\tau^2} - 1)\frac{\beta - v}{\beta - \alpha}$$ $$A = C\frac{v-\alpha}{v - \beta}$$ where \(v, \tau^2\) are estimated parameters, where \(v\) can be interpreted as mean age at childbearing. Thus, Beta model uses 5 parameters \(R, \beta, \alpha, v, \tau^2\), where only \(\tau^2\) has no demographic interpretation.
References
Peristera, P., & Kostaki, A. (2007). Modeling fertility in modern populations. Demographic Research, 16, 141-194.
Examples
age <- seq(15, 45, 5)
fx <- c(0.03, 0.10, 0.14, 0.12, 0.07, 0.03, 0.01)
fit <- fert.approx(fx = fx, age = age, model = "Hadwiger", se = FALSE)
predict(fit, age = 15:49)
#> age fx.model
#> 1 15 0.024034642
#> 2 16 0.036974591
#> 3 17 0.052334040
#> 4 18 0.069126477
#> 5 19 0.086166055
#> 6 20 0.102265760
#> 7 21 0.116399423
#> 8 22 0.127804670
#> 9 23 0.136024556
#> 10 24 0.140898693
#> 11 25 0.142520267
#> 12 26 0.141175349
#> 13 27 0.137277876
#> 14 28 0.131309554
#> 15 29 0.123769935
#> 16 30 0.115138749
#> 17 31 0.105850364
#> 18 32 0.096278886
#> 19 33 0.086731854
#> 20 34 0.077450287
#> 21 35 0.068613069
#> 22 36 0.060343940
#> 23 37 0.052719761
#> 24 38 0.045779070
#> 25 39 0.039530262
#> 26 40 0.033959003
#> 27 41 0.029034648
#> 28 42 0.024715618
#> 29 43 0.020953737
#> 30 44 0.017697630
#> 31 45 0.014895296
#> 32 46 0.012495965
#> 33 47 0.010451388
#> 34 48 0.008716664
#> 35 49 0.007250697
