12.3 Proceso de estimación y predicción
Obtener el modelo es solo un paso más, ahora se debe realizar la predicción en el censo, el cual fue estandarizado y homologado con la encuesta previamente.
poststrat_df <- readRDS("Recursos/Día4/Sesion2/Data/censo_mrp_dam2.rds") %>%
left_join(statelevel_predictors_df)
tba( poststrat_df %>% arrange(desc(n)) %>% head(10))| dam | dam2 | id_municipio | nombre_region | region | area | sexo | edad | anoest | n | modificacion_humana | accesibilidad_hospitales | accesibilidad_hosp_caminado | cubrimiento_cultivo | cubrimiento_urbano | luces_nocturnas | area1 | sexo2 | edad2 | edad3 | edad4 | edad5 | anoest2 | anoest3 | anoest4 | anoest99 | tiene_sanitario | tiene_acueducto | tiene_gas | eliminar_basura | tiene_internet | piso_tierra | material_paredes | material_techo | rezago_escolar | alfabeta | hacinamiento | tasa_desocupacion |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 32 | 03201 | 103201 | Región Ozama | 10 | 1 | 2 | 2 | 3 | 78858 | 2.7794 | -1.1311 | -1.4114 | -0.3529 | 4.1625 | 3.8009 | 0.9256 | 0.5173 | 0.2869 | 0.2158 | 0.1599 | 0.0502 | 0.2161 | 0.4041 | 0.1677 | 0.0161 | 0.0200 | 0.7131 | 0.0571 | 0.1791 | 0.7701 | 0.0102 | 0.0245 | 0.0153 | 0.2883 | 0.9252 | 0.1870 | 0.0074 |
| 32 | 03201 | 103201 | Región Ozama | 10 | 1 | 1 | 2 | 3 | 77566 | 2.7794 | -1.1311 | -1.4114 | -0.3529 | 4.1625 | 3.8009 | 0.9256 | 0.5173 | 0.2869 | 0.2158 | 0.1599 | 0.0502 | 0.2161 | 0.4041 | 0.1677 | 0.0161 | 0.0200 | 0.7131 | 0.0571 | 0.1791 | 0.7701 | 0.0102 | 0.0245 | 0.0153 | 0.2883 | 0.9252 | 0.1870 | 0.0074 |
| 01 | 00101 | 100101 | Región Ozama | 10 | 1 | 1 | 2 | 3 | 76098 | 3.6127 | -1.1835 | -1.5653 | -1.1560 | 7.2782 | 4.9650 | 1.0000 | 0.5224 | 0.2781 | 0.2117 | 0.1808 | 0.0725 | 0.2000 | 0.3680 | 0.2286 | 0.0193 | 0.0119 | 0.7946 | 0.0673 | 0.0810 | 0.6678 | 0.0033 | 0.0109 | 0.0111 | 0.3694 | 0.9247 | 0.1962 | 0.0066 |
| 01 | 00101 | 100101 | Región Ozama | 10 | 1 | 2 | 2 | 3 | 76002 | 3.6127 | -1.1835 | -1.5653 | -1.1560 | 7.2782 | 4.9650 | 1.0000 | 0.5224 | 0.2781 | 0.2117 | 0.1808 | 0.0725 | 0.2000 | 0.3680 | 0.2286 | 0.0193 | 0.0119 | 0.7946 | 0.0673 | 0.0810 | 0.6678 | 0.0033 | 0.0109 | 0.0111 | 0.3694 | 0.9247 | 0.1962 | 0.0066 |
| 25 | 02501 | 012501 | Región Cibao Norte | 01 | 1 | 2 | 2 | 3 | 52770 | 1.4723 | -0.9237 | -1.0018 | 0.3619 | 1.3166 | 1.6641 | 0.8601 | 0.5084 | 0.2837 | 0.2250 | 0.1564 | 0.0596 | 0.2622 | 0.3832 | 0.1282 | 0.0114 | 0.0189 | 0.8665 | 0.1021 | 0.1307 | 0.7972 | 0.0134 | 0.0136 | 0.0160 | 0.2118 | 0.8939 | 0.1787 | 0.0044 |
| 25 | 02501 | 012501 | Región Cibao Norte | 01 | 1 | 1 | 2 | 3 | 51227 | 1.4723 | -0.9237 | -1.0018 | 0.3619 | 1.3166 | 1.6641 | 0.8601 | 0.5084 | 0.2837 | 0.2250 | 0.1564 | 0.0596 | 0.2622 | 0.3832 | 0.1282 | 0.0114 | 0.0189 | 0.8665 | 0.1021 | 0.1307 | 0.7972 | 0.0134 | 0.0136 | 0.0160 | 0.2118 | 0.8939 | 0.1787 | 0.0044 |
| 32 | 03201 | 103201 | Región Ozama | 10 | 1 | 1 | 1 | 2 | 50744 | 2.7794 | -1.1311 | -1.4114 | -0.3529 | 4.1625 | 3.8009 | 0.9256 | 0.5173 | 0.2869 | 0.2158 | 0.1599 | 0.0502 | 0.2161 | 0.4041 | 0.1677 | 0.0161 | 0.0200 | 0.7131 | 0.0571 | 0.1791 | 0.7701 | 0.0102 | 0.0245 | 0.0153 | 0.2883 | 0.9252 | 0.1870 | 0.0074 |
| 01 | 00101 | 100101 | Región Ozama | 10 | 1 | 1 | 1 | 2 | 50015 | 3.6127 | -1.1835 | -1.5653 | -1.1560 | 7.2782 | 4.9650 | 1.0000 | 0.5224 | 0.2781 | 0.2117 | 0.1808 | 0.0725 | 0.2000 | 0.3680 | 0.2286 | 0.0193 | 0.0119 | 0.7946 | 0.0673 | 0.0810 | 0.6678 | 0.0033 | 0.0109 | 0.0111 | 0.3694 | 0.9247 | 0.1962 | 0.0066 |
| 32 | 03201 | 103201 | Región Ozama | 10 | 1 | 2 | 1 | 2 | 49652 | 2.7794 | -1.1311 | -1.4114 | -0.3529 | 4.1625 | 3.8009 | 0.9256 | 0.5173 | 0.2869 | 0.2158 | 0.1599 | 0.0502 | 0.2161 | 0.4041 | 0.1677 | 0.0161 | 0.0200 | 0.7131 | 0.0571 | 0.1791 | 0.7701 | 0.0102 | 0.0245 | 0.0153 | 0.2883 | 0.9252 | 0.1870 | 0.0074 |
| 01 | 00101 | 100101 | Región Ozama | 10 | 1 | 2 | 1 | 2 | 49010 | 3.6127 | -1.1835 | -1.5653 | -1.1560 | 7.2782 | 4.9650 | 1.0000 | 0.5224 | 0.2781 | 0.2117 | 0.1808 | 0.0725 | 0.2000 | 0.3680 | 0.2286 | 0.0193 | 0.0119 | 0.7946 | 0.0673 | 0.0810 | 0.6678 | 0.0033 | 0.0109 | 0.0111 | 0.3694 | 0.9247 | 0.1962 | 0.0066 |
Note que la información del censo esta agregada.
12.3.1 Distribución posterior.
Para obtener una distribución posterior de cada observación se hace uso de la función posterior_epred de la siguiente forma.
epred_mat <- posterior_epred(fit, newdata = poststrat_df, type = "response")
dim(epred_mat)
dim(poststrat_df)12.3.2 Estimación de la tasa de pobreza
n_filtered <- poststrat_df$n
mrp_estimates <- epred_mat %*% n_filtered / sum(n_filtered)
(temp_ing <- data.frame(
mrp_estimate = mean(mrp_estimates),
mrp_estimate_se = sd(mrp_estimates)
) ) %>% tba()| mrp_estimate | mrp_estimate_se |
|---|---|
| 0.244 | 0.0022 |
El resultado indican la proporción de personas por debajo de la linea de probreza 0.24 lineas de pobreza
12.3.3 Estimación para el dam == “01”.
Es importante siempre conservar el orden de la base, dado que relación entre la predicción y el censo en uno a uno.
temp <- poststrat_df %>% mutate( Posi = 1:n())
temp <- filter(temp, dam == "01") %>% select(n, Posi)
n_filtered <- temp$n
temp_epred_mat <- epred_mat[, temp$Posi]
## Estimando el CME
mrp_estimates <- temp_epred_mat %*% n_filtered / sum(n_filtered)
(temp_dam01 <- data.frame(
mrp_estimate = mean(mrp_estimates),
mrp_estimate_se = sd(mrp_estimates)
) ) %>% tba()| mrp_estimate | mrp_estimate_se |
|---|---|
| 0.2615 | 0.0053 |
El resultado nos indica que la tasa de pobreza en la dam 01 es 0.26
12.3.4 Estimación para la dam2 == “00203”
temp <- poststrat_df %>% mutate(Posi = 1:n())
temp <-
filter(temp, dam2 == "00203") %>% select(n, Posi)
n_filtered <- temp$n
temp_epred_mat <- epred_mat[, temp$Posi]
## Estimando el CME
mrp_estimates <- temp_epred_mat %*% n_filtered / sum(n_filtered)
(temp_dam2_00203 <- data.frame(
mrp_estimate = mean(mrp_estimates),
mrp_estimate_se = sd(mrp_estimates)
) ) %>% tba()| mrp_estimate | mrp_estimate_se |
|---|---|
| 0.3566 | 0.0337 |
El resultado nos indica que la tasa de pobreza en la dam2 05001 es 0.36
Después de comprender la forma en que se realiza la estimación de los dominios no observados procedemos el uso de la función Aux_Agregado que es desarrollada para este fin.
(mrp_estimate_Ingresolp <-
Aux_Agregado(poststrat = poststrat_df,
epredmat = epred_mat,
byMap = NULL)
) %>% tba()| Nacional | mrp_estimate | mrp_estimate_se |
|---|---|---|
| Nacional | 0.244 | 0.0022 |
De forma similar es posible obtener los resultados para las divisiones administrativas del país.
mrp_estimate_dam <-
Aux_Agregado(poststrat = poststrat_df,
epredmat = epred_mat,
byMap = "dam")
tba(mrp_estimate_dam %>% head(10))| dam | mrp_estimate | mrp_estimate_se |
|---|---|---|
| 01 | 0.2615 | 0.0053 |
| 02 | 0.2599 | 0.0161 |
| 03 | 0.4945 | 0.0114 |
| 04 | 0.3811 | 0.0111 |
| 05 | 0.2812 | 0.0245 |
| 06 | 0.1845 | 0.0096 |
| 07 | 0.4678 | 0.0252 |
| 08 | 0.2237 | 0.0112 |
| 09 | 0.1357 | 0.0093 |
| 10 | 0.4550 | 0.0223 |
mrp_estimate_dam2 <-
Aux_Agregado(poststrat = poststrat_df,
epredmat = epred_mat,
byMap = "dam2")
tba(mrp_estimate_dam2 %>% head(10) )| dam2 | mrp_estimate | mrp_estimate_se |
|---|---|---|
| 00101 | 0.2615 | 0.0053 |
| 00201 | 0.2188 | 0.0175 |
| 00202 | 0.2939 | 0.0311 |
| 00203 | 0.3566 | 0.0337 |
| 00204 | 0.2157 | 0.0469 |
| 00205 | 0.2961 | 0.0436 |
| 00206 | 0.3471 | 0.0297 |
| 00207 | 0.2742 | 0.1614 |
| 00208 | 0.2932 | 0.0340 |
| 00209 | 0.2990 | 0.1686 |
El mapa resultante es el siguiente
Figura 12.3: Tasa de pobreza por dam2