Ir al contenido principal

Nuevamente la librería survey.

Ahora bien, surge una segunda pregunta: ¿el dato se puede obtener por sexo y por entidad? Sí, si se puede, pero la siguiente pregunta en el argot de los estadísticos es “¿si da la muestra para tales resultados?”.

Si nos vamos a los documentos de la encuesta podemos ver en la nota técnica lo siguiente:

Características metodológicas de la ENUT 2019

Unidad de análisis: Hogares e integrantes del hogar de 12 años y más.

Población objetivo: Población de 12 años y más.

Instrumento de captación: Cuestionario de preguntas predefinidas sobre actividades de uso del tiempo.

Método de captación: Entrevista directa a cada uno de los integrantes de 12 años y más en el hogar mediante dispositivo móvil.

Periodo de levantamiento: Del 21 de octubre al 01 de diciembre de 2019. 

Desglose geográfico Nacional: por tamaño de localidad (10 mil y más habitantes, y menos de 10,000 habitantes) y entidad federativa. 

Tamaño de la muestra: 26 631 viviendas y 71 404 personas de 12 años y más que representan 33.2 millones de viviendas y 101.1 millones de personas. Adicional, 1 798 viviendas en localidades de predominio de población hablante de lengua indígena. 

Diseño de la muestra: Probabilístico, estratificado, por conglomerados.

Ahora revisando el Diseño Muestral en lo referente al marco nos dice lo siguiente:

El diseño muestral de la ENUT 2019 se caracteriza por ser probabilístico, por lo cual los resultados obtenidos de la encuesta se generalizan a toda la población, a su vez es bietapico, estratificado y por conglomerados, donde las unidades de observación son los hogares y las personas de 12 o más de edad.

La submuestra para la ENUT 2019 se seleccionó a partir de la muestra maestra 2012 del Instituto, esta muestra maestra se diseñó y seleccionó del Marco Maestro de Muestreo 2012 (MMM) el cual se conformó de conglomerados de viviendas llamados Unidades Primarias de Muestreo (UPM), construidos a partir de la información cartográfica y demográfica que se obtuvo del Censo de Población y Vivienda 2010. La muestra maestra permite la selección de submuestras para todas las encuestas en viviendas que realiza el Instituto; su diseño es probabilístico, estratificado, unietápico y por conglomerados, pues es en ellos donde se seleccionaron, en una segunda etapa, las viviendas que integran las submuestras de las diferentes encuestas…

Sin embargo, al entrar más a detalle al documento sin duda hay que tener conocimientos básicos de muestreo, no obstante, lo que puede ayudarnos a contestar si la muestra da para el desglose que se pide esta en la sección 12. Homologación de la Semaforización para los Umbrales de Indicadores de precisión estadística.

Para facilitar la interpretación de las precisiones estadísticas de la información pública en tabulados, el Comité de Aseguramiento de la Calidad, en la cuarta sesión celebrada el 1 de noviembre de 2018, aprobaron los siguientes umbrales y especificaciones para la publicación en los tabulados los CV (coeficientes de variación), así como su semaforización de estos”.

Umbrales aprobados para la cobertura del CV.

Interpretación

Semaforización

Viviendas/Hogares/Otras

unidades diferentes a las

económicas DGES/DGEGSPJ

 

Alta

Blanco

[0%, 15%)

Moderada

Amarillo

[15%, 30%)

Baja

Naranja oscuro

>=30%

Umbrales aprobados para el reporte de la precisión de acuerdo con el coeficiente de variación en los tabulados de resultados de los proyectos con muestreo probabilístico (acuerdo CAC-007/01/2018).

Por otro lado, si revisamos los cuadros que están en la página del Instituto vemos este coloreado y las leyendas que especifica este documento.

Dicho lo anterior tenemos que usar otra librería y no solo expandir la cifra sino calcular sus precisiones estadísticas. En artículos anteriores se explicó la librería de R llamada survey, entonces vamos a instalarla con las bondades que nos ofrece Posit RStudio.


Un aspecto que le pone un poco de complejidad a esta consulta es que el dato entidad federativa (ENT) está en otro conjunto de datos, para lograr esto podemos recordar un tema de la teoría de conjuntos.

https://programacionymas.com/blog/como-funciona-inner-left-right-full-join

Para este caso vamos a usar un left join donde en el lado izquierdo quedará el conjunto de datos del sociodemográfico, aunque en el estricto sentido con un inner join sería suficiente ya que es ilógico que existan residentes en hogares sin su correspondiente vivienda.

Verbo join de dplyr

Vamos a describir el código:

#Para instalar, en el menú Tools - Install Packages
library(survey)
library(dplyr)

# Ojo con las diagonales, deben ser inversas
setwd ("D:/Ruta")
#importo a un dataframe el conjunto de datos (Archivo csv) del sociodemográfico
dfSDEnut2019 <- read.csv("conjunto_de_datos_tsdem_enut_2019.csv")
#importo a un dataframe el conjunto de datos (Archivo csv) de la vivienda
dfVivEnut2019 <- read.csv("conjunto_de_datos_tvivienda_enut_2019.csv")

dfCuadroEntxSexo <- left_join(dfSDEnut2019,dfVivEnut2019,c("UPM","VIV_SEL")) %>%
  select(EDAD, SEXO, P3_9, P3_10, ENT, EST_DIS.x, UPM_DIS.x , FAC_HOG, FAC_VIV)

Aquí es donde por medio de las llaves (columnas UPM y VIV_SEL) que unen a los dos conjuntos de datos se puede traer la columna de entidad (ENT), el primer conjunto de datos (residentes de los hogares) es dfSDEnut2019 que son los datos de la izquierda (left) y el segundo (viviendas) es dfVivEnut2019 que en este caso es el lado derecho (right), para evitar traernos todas las columnas de ambos conjuntos de datos agregamos la instrucción select que para el caso de las columnas EST_DIS y UPM_DIS al estar en ambos conjuntos de datos el dataframe resultante discrimina cada columna repetida agregando un .x refiriéndose a la tabla de la izquierda y un .y para el conjunto de datos de la izquierda.

Resumiendo, la instrucción left_join trae todas las filas del conjunto de datos de la izquierda y las filas coincidentes del conjunto de datos de la derecha.


Con esto ya tenemos un conjunto de datos más manejable y con la información necesaria.

Como se describe en pasados artículos del blog vamos a usar la librería survey y para ello necesitamos crear variables dicotómicas, estas variables tienen valores de 1 y 0 donde 1 es cuando se cumple determinada condición y 0 el caso contrario.

dfCuadroEntxSexo$MAgsNAUnioEmb <- ifelse(dfCuadroEntxSexo$SEXO==2 &
                                           dfCuadroEntxSexo$ENT==1 &
                                           (dfCuadroEntxSexo$EDAD>=15 &
                                           dfCuadroEntxSexo$EDAD<=24) &
                                           dfCuadroEntxSexo$P3_9==2 &
                                           (dfCuadroEntxSexo$P3_10==4 |
                                           dfCuadroEntxSexo$P3_10==5),1,0)

Para este fin utilizamos la instrucción ifelse() donde como primer argumento ponemos la condición (la cual es un poco extenso debido a lo complejo de la consulta) una buena práctica es relacionar las condiciones para darle significado a lo que estamos buscando, además que pudiera fallar la misma debido a la prioridad de los operadores lógicos y relacionales y por ello además de buena práctica resulta necesario el uso de paréntesis. Si se cumple la condición la variable toma el valor de 1 caso contrario sería un 0, la variable nueva se define después del signo de pesos ($) y para este caso se le ha nombrado MAgsNAUnioEmb.

Creación de la variable dicotómica y el cálculo de sus precisiones.

Para ejemplificar vamos a calcular el número de mujeres de Aguascalientes de 15 a 24 años que no asisten a la escuela porque se unieron (casaron) o se embarazaron como se acaba de ejemplificar ahora vamos a hacer cálculos sobre ella.

DisenioE <- svydesign(id=~UPM_DIS.x, strata=~EST_DIS.x, data=dfCuadroEntxSexo,
weights=~FAC_HOG)

#Número de Mujeres en Aguascalientes de 15 a 24 años que no asisten a la escuela
#por que se unieron o se embarazaron y su coeficiente de variación

numMujAgsNaEEmboUni <- svytotal(~MAgsNAUnioEmb, DisenioE)

cv_numMujAgsNaEEmboUni <- cv(svytotal(~MAgsNAUnioEmb, DisenioE)) * 100

ee_numMujAgsNaEEmboUni <- SE(svytotal(~MAgsNAUnioEmb, DisenioE))

li_numMujAgsNaEEmboUni <- confint(svytotal(~MAgsNAUnioEmb, DisenioE),0.90)[1]

ls_numMujAgsNaEEmboUni <- confint(svytotal(~MAgsNAUnioEmb, DisenioE),0.90)[2]

Una vez creada la variable, por medio del comando svydesign() se crea el diseño usando las variables de diseño (UPM_DIS.x y EST_DIS.x), se indica el dataframe así como el ponderador (factor de expansión). Después por medio del comando svytotal() usando la variable dicotómica y el diseño muestral. Para el caso del coeficiente de variación es la función cv() y como parámetro el comando que calculo la cifra expandida dicho resultado lo multiplicamos por 100 para ver ese dato o celda futura de una hoja en MS Excel tendrá un umbral de calidad como se mencionó anteriormente. Por último, se calcula el error estándar (SE()) y los límites inferiores y superiores (confint()).

A continuación parte del código y ejecución de este script.


Se puede deducir que podemos hacer los mismo 63 veces más variando el sexo y la entidad, pero la verdad sería riesgoso y poco óptimo por lo que vamos a utilizar un comando nuevo para resolver esto de manera más fácil.

Hasta el siguiente post.

Miguel Araujo.



Comentarios

Entradas populares de este blog

Posit Cloud - como instalar librerías de Python en el entorno de R

 Ahora que estamos tomando una maestría buscando que siga "girando la ardilla" por unos años más en la materia de "Cómputo Estadístico" nos ha sugerido usar la versión gratuita de Posit en la nube. En su página definen este producto como "es una solución basada en la nube que permite acceder al poderoso conjunto de herramientas de ciencia de datos de Posit directamente en el navegador web  - sin requerir instalación o configuraciones complejas". Para los usuarios que han utilizado Posit RStudio en primera instancia verán el entorno muy similar a Posit Cloud con algunas pequeñas diferencias, para empezar necesitamos un usuario o contraseña aunque es posible autenticarse usando alguna cuenta existente como es el caso de Google. Con el tiempo y trabajando en desarrollo de software, vamos entendiendo que quizás el nombre queda muy grande a los pequeños ejemplos, pero es muy recomendable el uso de proyectos siempre. A continuación vemos el entorno Posit Clo...

La librería openxlsx

En el Instituto se utiliza como herramienta de trabajo institucional la suite de ofimática MS Office que ofrece un precio asequible aunque lo actual en el mundo del software es el esquema de suscripciones el que casi se ha convertido en el común de las empresas gigantes de las tecnologías de la información. Es por ello que si bien en un principio que se usaban las bibliotecas XLConnectJars   y XLConnect, al tratar de bajarlas e instalarlas se descubrió - en aquel entonces - que estaban obsoletas. Es por ello que se volteo a la que revisaremos superficialmente en este artículo. Lo primero como siempre es descargar la librería openxlsx que se puede hacer desde el mismo Posit RStudio. Vamos a recrear un cuadro existente en el sitio del Instituto que debido a la crisis sanitaria iniciada en 2020 cobra una relevancia muy importante: "Las principales causas de muerte" que de forma anecdótica   fue la primera aplicación en la cual me pidieron que participara, un programa escri...

R 4.5 vs R 4.4.3

Cuando comparto con mis colegas, sobre todo de trabajo que es mi nicho profesional, acerca de porque tener las últimas versiones del software y que replico sobre todo por dos vertientes: mejor desempeño y funcionalidad del software, y la seguridad que pareciera que las empresas de software recomiendan los mismo o algo cercano a esto. Por ejemplo, veamos lo que nos dice Oracle (dueño de Java) acerca de su versión 8 del Java SE.   En la tabla de la página de Oracle podemos observar las fechas en los cuales ya no habrá soporte para ciertas versiones de Java. En este breve artículo veremos en el caso del interprete de R como se desempeña en una versión con respecto a la más reciente. Los puestos de trabajo que se registran por los patrones en el IMSS ha sido una cifra que muestra el avance o retroceso de como se encuentra el empleo en nuestro país, en este caso diremos que en el sector formal. Los microdatos oscilan arriba de los 20 millones y para su procesamiento es necesario o divi...