Ir al contenido principal

R parte 4


Ahora viene lo bueno y otra vez entramos a terrenos que dominan más los matemáticos-estadísticos, aunque de hecho el cálculo pues no es más que usar otra función del paquete survey y ya.
En la página del INEGI hay un artículo llamado “Una aproximación metodológica al uso de datos de encuestas en hogares” escrito por el ex-compañero Julio Cesar Martínez Sánchez, donde menciona de forma llana y sencilla una definición de estas mediciones.
...existen algunas medidas de dispersión que son útiles para evaluar la calidad de un dato que se genera a partir de una encuesta compleja. Dentro de éstas se encuentran los errores estándar y de muestreo, el intervalo de confianza y el coeficiente de variación (Carsey, 2014; EUSTAT, 1998; Steven, 1999; Naciones Unidas, 2009; Wolter, 2009). Esta última es de gran importancia, pues refleja la magnitud relativa que tiene dicho error estándar con respecto al estimador de referencia, y entre más pequeño sea este valor, mejor es la precisión. Si bien no existe un consenso unánime sobre qué valores son los más adecuados, el INEGI considera que un dato es de buena calidad si el coeficiente de variación está por debajo de 15%, aceptable si se encuentra entre 15 y 25% y de baja calidad cuando supera 25 por ciento.
Entonces sin ahondar mucho en el tema estamos hablando de la calidad del dato que se ha recolectado.
Entremos en materia. Vamos con el primer porcentaje o mejor dicho con el dato absoluto de mujeres embarazadas de 15 a 49 años.




Quedamos que para obtener el dato total de personas de este subuniverso es usando svytotal()

>total < - svytotal(~cel1_1, DisenoE)

Y aplicamos la función cv para el cálculo del coeficiente de variación multiplicado por 100.

>cv(total)*100
cel1_1
cel1_1 2.34

El resultado es 2.34 como viene en el cuadro que se publicó, ahora lo hacemos con el dato porcentual.

>porcel1_2 < - svyratio(~cel1_2, denominator=~cel1_1, DisenoE)

>cv(porcel1_2)*100
cel1_1
cel1_2 1.76

Estos dos datos según el parámetro INEGI es un dato muy confiable, ahora lo que queda es sacarlos masivamente y que esto será posible usando el mismo patrón que he usado para la programación.


 El código nuevamente construye las 3 columnas para al final construir el cuarto dataframe.


>Cuadro5_1cv <- data.frame(col1, col2, col3)


 Para la interpretación del cuadro se “colorean” las celdas para mostrar el grado de confiabilidad, de blanco, amarillo y naranja de mayor a menor calidad, incluso aquí se observa que para mujeres embarazadas de 40 a 49 años que querían esperar o no deseaban embarazarse (74.33) el dato se elimina de la publicación.
Vamos ahora con el error estándar nos referimos a un libro del censo del año de 1990 en Puerto Rico que define al error estándar de esta forma “El error estándar (SE, por sus siglas en inglés) de una estimación de la muestra es la medida de la variación entre las estimaciones de todas las muestras posibles y es por lo tanto una medida de la precisión con la cual una estimación de una muestra particular se aproxima al resultado promedio de todas las muestras posibles
De alguna manera sale de forma directa con lo que ahora hemos hecho, cada cálculo con svytotal(), svyratio() o svyby() se calcula el error estándar, y la forma de accesar es anteponiendo SE (Standard Error) y el cálculo en específico entre paréntesis, aquí algunos ejemplos.
> SE(svytotal(~cel1_1, DisenoE))
cel1_1
cel1_1 24879
> SE(svyratio(~cel1_2, denominator=~cel1_1, DisenoE))*100
cel1_2/cel1_1
1.12
> SE(svyby(~cel1_2, denominator=~cel1_1,by=~Fila1, DisenoE,svyratio))*100
[1] 2.45 2.17 2.24 2.39 4.08 8.22 NaN
> SE(svyby(~cel1_1, by=~Fila1, DisenoE, svytotal))
[1] 11354 13231 13549 8131 7000 3154 0



Para por último obtener el dataframe completo.




La conclusión a este documento lo hago ya cuando pude realizar 17 cuadros que me tocaron a desarrollar, y como anécdota diré que este primer cuadro quedó 509 líneas (que sueño que te pagaran por línea de código).
Cabe mencionar que falta la parte donde esta información se envía a los cuadros de Excel para su edición final.
En los subsecuentes abordaré algunos aspectos finos de esta primer experiencia de programación en R.

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...

REDATAM en Ubuntu (Linux)

 En un blog alterno, escribí sobre como migraba un "viejo" Intel i5 al sistema operativo Ubuntu en su versión más actual. Me comunique con mi gran colega Lenin de la CELADE en Chile, después de mucho tiempo, y le pedí me diera un pequeño resumen del "estado del arte" de REDATAM me dijo que todo marchaba bien, y pues ahora creo que tengo que actualizarme en contenedores pues el web server se encuentra ahí. Nos pusimos manos a la obra, el instalable desde la página no tiene ninguna extensión de archivo, asumí que era un ejecutable para Linux, no se si la página sufra ataques constantes ya que después quise volver a descargar sin éxito, la página estaba caida, sin embargo rescate el ejecutable anteriormente descargado. Últimamente primero hago y después documento, ya que con todo y mi compañero Deep,  no todo sale a la primera ni como lo dictan sus sugerencias, sobre todo en Linux y MacOS.  Por lo que, les muestro solo el resultado final de esta primera exploración, im...

El problema del gallo - otra vertiente de usar Python en RMarkdown con Posit RStudio

Cuando pensamos que ya se había cruzado el río, el buen gallo - mi amigo el Dany  Lara- no podía insertar código de Python  en un documento de RMarkdown  usando la versión de escritorio de Posit RStudio a pesar de las soluciones como instalar el Python y direccionarlo desde R con la biblioteca reticulate . Si bien se podía ejecutar código del interprete base, al querer correr usando módulos y con ello intentando instalar dichos módulos mandaba el siguiente mensaje: > py_install('matplotlib') Using virtual environment "D:/tu_usuario/Documents/.virtualenvs/r-reticulate" ... WARNING: Retrying (Retry(total=4, connect=None, read=None, redirect=None, status=None)) after connection broken by 'SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1006)'))': /simple/matplotlib/ WARNING: Retrying (Retry(total=3, connect=None, read=None, redirect=None, status=None)) a...