Estimate net migration from survival ratios applied to lifetime migration data
Source:R/net_sr.R
net_sr.Rd
Using survival ratios to estimate net migration from lifetime migration data
Usage
net_sr(
.data,
pop0_col = "pop0",
pop1_col = "pop1",
survival_ratio_col = "sr",
net_children = FALSE,
maternal_exposure = c(0.25, 0.75),
maternal_age_id = 4:9,
maternal_col = pop1_col
)
Arguments
- .data
A data frame with two rows with the total number of lifetime in- and out-migrants in separate columns. The first row contains totals at the first time point and second row at the second time point.
- pop0_col
Character string name of column containing name of initial populations. Default
"pop0"
.- pop1_col
Character string name of column containing name of end populations. Default
"pop1"
.- survival_ratio_col
Character string name of column containing survivor ratios. Default
"sr"
.- net_children
Logical to indicate if to estimate net migration when no survival ratio exists. Default
FALSE
.- maternal_exposure
Vector for maternal exposures to interval to be used to estimate net migration for each of the unknown children age groups. Length should correspond to the number of children age groups where net migration estimates are required.
- maternal_age_id
Row numbers to indicate which rows correspond to maternal age groups at the end of the period.
- maternal_col
Name of maternal population column, required for the estimation of net migration of children.
References
Bogue, D. J., Hinze, K., & White, M. (1982). Techniques of Estimating Net Migration. Community and Family Study Center. University of Chicago.
Examples
# results to match un manual 1984 (table 24)
net_sr(bombay_1951, pop0_col = "pop_1941", pop1_col = "pop_1951")
#> # A tibble: 13 × 10
#> age_1941 age_1951 pop_1941 pop_1951 sr net_forward net_reverse net_average
#> <fct> <fct> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
#> 1 0-4 10-14 77135 132870 0.909 62777. 69085. 65931.
#> 2 5-9 15-19 85434 170227 0.957 88441. 92386. 90413.
#> 3 10-14 20-24 79185 263971 0.947 188975. 199530. 194252.
#> 4 15-19 25-29 82603 253964 0.931 177077. 190242. 183659.
#> 5 20-24 30-34 126247 195373 0.922 78935. 85585. 82260.
#> 6 25-29 35-39 155344 151259 0.916 8948. 9768. 9358.
#> 7 30-34 40-44 138843 118383 0.905 -7228. -7990. -7609.
#> 8 35-39 45-49 109356 76421 0.885 -20359. -23005. -21682.
#> 9 40-44 50-54 81626 65897 0.855 -3877. -4535. -4206.
#> 10 45-49 55-59 47062 32265 0.812 -5959. -7337. -6648.
#> 11 50-54 60-64 36908 22248 0.754 -5562. -7382. -6472.
#> 12 55-59 65-69 15134 9655 0.673 -524. -779. -652.
#> 13 60+ 70+ 25094 10100 0.387 399. 1031. 715.
#> # ℹ 2 more variables: pop1_forward <dbl>, pop0_reverse <dbl>
# results to match Bogue, Hinze and White (1982)
library(dplyr)
alabama_1970 %>%
filter(race == "white", sex == "male") %>%
select(-race, -sex) %>%
group_by(age_1970) %>%
net_sr(pop0_col = "pop_1960", pop1_col = "pop_1970",
survival_ratio_col = "us_census_sr")
#> # A tibble: 17 × 9
#> age_1970 pop_1960 pop_1970 us_census_sr net_forward net_reverse net_average
#> <fct> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
#> 1 0-4 110365 105503 0.955 57.0 59.6 58.3
#> 2 5-9 126116 120884 0.947 1481. 1564. 1523.
#> 3 10-14 126346 128656 1.00 2063. 2059. 2061.
#> 4 15-19 119571 118485 1.01 -1704. -1696. -1700.
#> 5 20-24 117525 102296 0.989 -13929. -14085. -14007.
#> 6 25-29 94148 85778 0.973 -5846. -6007. -5926.
#> 7 30-34 72012 74046 0.985 3138. 3187. 3162.
#> 8 35-39 70867 71636 0.980 2176. 2220. 2198.
#> 9 40-44 75168 75179 0.972 2127. 2189. 2158.
#> 10 45-49 76872 73602 0.948 708. 746. 727.
#> 11 50-54 72068 67679 0.933 466. 499. 482.
#> 12 55-59 69002 60807 0.885 -273. -308. -291.
#> 13 60-64 60654 52073 0.845 791. 936. 863.
#> 14 65-69 49127 38786 0.750 1917. 2555. 2236.
#> 15 70-74 37344 26632 0.675 1436. 2129. 1783.
#> 16 75-79 32063 17418 0.537 214. 399. 306.
#> 17 80+ 51294 16029 0.296 860. 2908. 1884.
#> # ℹ 2 more variables: pop1_forward <dbl>, pop0_reverse <dbl>
# results to match UN manual 1992 (table 6)
net_sr(manila_1970, pop0_col = "pop_1960", pop1_col = "pop_1970",
survival_ratio_col = "phl_census_sr")
#> # A tibble: 16 × 9
#> age_1970 pop_1960 pop_1970 phl_census_sr net_forward net_reverse net_average
#> <fct> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
#> 1 0-4 NA 85870 NA 0 0 0
#> 2 5-9 NA 83054 NA 0 0 0
#> 3 10-14 80275 79489 1.12 -10196. -9126. -9661.
#> 4 15-19 70875 101410 0.992 31134. 31400. 31267.
#> 5 20-24 63250 90410 0.973 28877. 29683. 29280.
#> 6 25-29 85618 56055 0.889 -20082. -22582. -21332.
#> 7 30-34 75793 44648 0.841 -19117. -22723. -20920.
#> 8 35-39 60037 36963 0.957 -20497. -21416. -20957.
#> 9 40-44 34813 28873 0.951 -4244. -4462. -4353.
#> 10 45-49 31927 23678 0.904 -5189. -5739. -5464.
#> 11 50-54 24297 19063 0.930 -3521. -3788. -3655.
#> 12 55-59 20207 14484 0.797 -1613. -2025. -1819.
#> 13 60-64 13714 10205 0.877 -1822. -2078. -1950.
#> 14 65-69 9366 6405 0.835 -1417. -1697. -1557.
#> 15 70-74 7921 3746 0.712 -1890. -2657. -2274.
#> 16 75+ 11114 4779 0.562 -1472. -2617. -2045.
#> # ℹ 2 more variables: pop1_forward <dbl>, pop0_reverse <dbl>
# with children net migration estimate
net_sr(manila_1970, pop0_col = "pop_1960", pop1_col = "pop_1970",
survival_ratio_col = "phl_census_sr", net_children = TRUE)
#> # A tibble: 16 × 9
#> age_1970 pop_1960 pop_1970 phl_census_sr net_forward net_reverse net_average
#> <fct> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
#> 1 0-4 NA 85870 NA -235. -605. -420.
#> 2 5-9 NA 83054 NA -8935. -10486. -9710.
#> 3 10-14 80275 79489 1.12 -10196. -9126. -9661.
#> 4 15-19 70875 101410 0.992 31134. 31400. 31267.
#> 5 20-24 63250 90410 0.973 28877. 29683. 29280.
#> 6 25-29 85618 56055 0.889 -20082. -22582. -21332.
#> 7 30-34 75793 44648 0.841 -19117. -22723. -20920.
#> 8 35-39 60037 36963 0.957 -20497. -21416. -20957.
#> 9 40-44 34813 28873 0.951 -4244. -4462. -4353.
#> 10 45-49 31927 23678 0.904 -5189. -5739. -5464.
#> 11 50-54 24297 19063 0.930 -3521. -3788. -3655.
#> 12 55-59 20207 14484 0.797 -1613. -2025. -1819.
#> 13 60-64 13714 10205 0.877 -1822. -2078. -1950.
#> 14 65-69 9366 6405 0.835 -1417. -1697. -1557.
#> 15 70-74 7921 3746 0.712 -1890. -2657. -2274.
#> 16 75+ 11114 4779 0.562 -1472. -2617. -2045.
#> # ℹ 2 more variables: pop1_forward <dbl>, pop0_reverse <dbl>