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.
<- readRDS("Recursos/Día4/Sesion2/Data/censo_mrp_dam2.rds") %>%
poststrat_df 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.
<- posterior_epred(fit, newdata = poststrat_df, type = "response")
epred_mat dim(epred_mat)
dim(poststrat_df)
12.3.2 Estimación de la tasa de pobreza
<- poststrat_df$n
n_filtered <- epred_mat %*% n_filtered / sum(n_filtered)
mrp_estimates
<- data.frame(
(temp_ing 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.
<- poststrat_df %>% mutate( Posi = 1:n())
temp <- filter(temp, dam == "01") %>% select(n, Posi)
temp <- temp$n
n_filtered <- epred_mat[, temp$Posi]
temp_epred_mat
## Estimando el CME
<- temp_epred_mat %*% n_filtered / sum(n_filtered)
mrp_estimates
<- data.frame(
(temp_dam01 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”
<- poststrat_df %>% mutate(Posi = 1:n())
temp <-
temp filter(temp, dam2 == "00203") %>% select(n, Posi)
<- temp$n
n_filtered <- epred_mat[, temp$Posi]
temp_epred_mat ## Estimando el CME
<- temp_epred_mat %*% n_filtered / sum(n_filtered)
mrp_estimates
<- data.frame(
(temp_dam2_00203 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