
Perfilar Múltiples Variables Dicotómicas con Criterios de Calidad
Source:R/multi_bin.R
multi_bin.RdPara un **único diseño de encuesta**, calcula la proporción de "1s" para un vector de variables dicotómicas (0/1). Esta función es una herramienta de conveniencia para perfilados rápidos y análisis exploratorios. A diferencia de `obs_prop`, está optimizada para analizar múltiples variables dentro de una sola encuesta, pero no para comparar entre años. Genera un reporte en Excel con una hoja consolidada (con todas las métricas de calidad) y hojas de formato para el nivel nacional y cada desagregación simple.
Usage
multi_bin(
design,
vars_binarias,
des = NULL,
es_var_estudio = FALSE,
filt = NULL,
dir = NULL,
filename = NULL,
decimales = 1,
decimales_se = 3,
n_minimo = 30,
verbose = TRUE
)Arguments
- design
Un objeto `tbl_svy` de `srvyr`.
- vars_binarias
Un vector de strings con los nombres de las variables dicotómicas (codificadas como 0/1) a perfilar.
- des
Un vector de strings con los nombres de las variables de desagregación simple.
- es_var_estudio
Booleano. Si `TRUE`, aplica criterios de fiabilidad menos estrictos para el tamaño muestral.
- filt
Expresión de filtro. Acepta tanto una expresión R sin comillas (`filt = edad > 18`) como un string (`filt = "edad > 18"`). Ambas formas son equivalentes y retrocompatibles.
- dir
Un string con la ruta del directorio de salida. Obligatorio (no tiene valor por defecto, para no escribir en el directorio de trabajo sin consentimiento explícito). Use por ejemplo `dir = tempdir()`. Se crea si no existe.
- filename
Un string con el nombre del archivo Excel.
- decimales
Entero. Número de decimales para la estimación puntual. Por defecto es 1.
- decimales_se
Entero. Número de decimales para el error estándar. Por defecto es 3.
- n_minimo
Entero. Tamaño muestral mínimo para clasificar una estimación como fiable. Por defecto es `30`.
- verbose
Booleano. Si `TRUE`, muestra mensajes de progreso.
Examples
library(srvyr)
#>
#> Attaching package: ‘srvyr’
#> The following object is masked from ‘package:stats’:
#>
#> filter
library(dplyr)
#>
#> Attaching package: ‘dplyr’
#> The following objects are masked from ‘package:stats’:
#>
#> filter, lag
#> The following objects are masked from ‘package:base’:
#>
#> intersect, setdiff, setequal, union
# Se usa una región pequeña (Aysén) para un ejemplo rápido;
# con la base completa el uso es idéntico.
design_ays <- casen_2024 %>%
filter(region == 11) %>%
as_survey_design(ids = varunit, strata = varstrat,
weights = expr, nest = TRUE)
# Prevalencia de indicadores de inseguridad alimentaria por área
multi_bin(design_ays, vars_binarias = paste0("r8", letters[1:8]),
des = "area", dir = tempdir(), verbose = FALSE)