Visualización de datos faltantes en RW/ GGMICE

Cuando analizamos datos, queremos saber los próximos pasos sobre cómo encontrar los valores faltantes porque la mayoría de las cosas en análisis están determinadas por diferentes factores. Para ayudarlo con esto, abordaremos la visualización de datos faltantes en R usando el paquete ggmice . Puedes ver el video completo de este tutorial en la parte inferior de este blog .

“¿Qué hago con los valores perdidos?” Esta es una pregunta esencial que debe hacerse cuando analiza datos. Todos esperamos que sean fáciles de encontrar ya que están codificados como nulos o NA.

Echaremos un vistazo a algunas reglas generales y los próximos pasos. Aprenderemos a responder preguntas como ¿cuántos datos faltantes hay? que tan grande es el problema? ¿Podemos encontrar algún patrón en los datos?

Hay muchas maneras de hacer esto, pero vamos a usar la visualización de datos faltantes en R como el primer comienzo exploratorio.

Tabla de contenido

Cuándo descartar y cuándo encontrar valores faltantes

Si no hay un patrón en la forma en que faltan y afecta a menos del 5 % de las observaciones, ya sea en la columna o en el conjunto de datos, entonces podría descartar esos valores faltantes.

Sin embargo, si resulta que está más extendido y puede encontrar algunos patrones significativos basados ​​en las visualizaciones, es posible que deba hacer algo con esos datos.

Entonces, en lugar de descartarlos, podemos imputarlos porque probablemente haya una historia sobre por qué faltan esos valores en el patrón tal como están.

Visualización de datos faltantes en RW/ GGMICE

En esta demostración, usaremos un paquete que imputará los valores faltantes. Este es un nuevo paquete para visualizar datos faltantes en R y se llama ggmice .

La idea es encontrar el patrón y cuántos valores faltan, por lo tanto, veremos el patrón de trazado y luego la matriz predictora de trazado .

MICE significa imputación multivariada por métodos encadenados . No nos estamos metiendo en la mecánica, pero aprenderemos cómo este algoritmo imputará nuestros datos si lo usamos.

Otra cosa que debe saber acerca de la visualización de datos faltantes en R usando ggmice es que realmente debe ser compatible con ggplot2 , por lo que podemos crear algunas visualizaciones en la parte posterior de ggplot2 , el famoso paquete de visualización. 

Visualización de datos faltantes en RW/ GGMICE

Pasos para visualizar datos faltantes en R con GGMICE

Sigamos adelante y arranquemos RStudio . Lo primero que debemos hacer es importar todos los paquetes que necesitamos escribiendo biblioteca (ggmice) , biblioteca (tidyverse) que incluye ggplot2 y conjuntos de datos de biblioteca (Ecdat) .

El paquete de la biblioteca (Ecdat) tiene muchos buenos conjuntos de datos para practicar. Es por eso que lo estamos usando e importando.

Visualización de datos faltantes en RW/ GGMICE

Uno de los conjuntos de datos es ayuda (MCAS) . Ejecutemos la función de ayuda en esto.

Como podemos ver, esto es de Ecdat y es un conjunto de datos de puntaje de prueba. Esta documentación de ayuda describe cada una de las columnas y nos dice de dónde proviene.

Vamos a usar esto para saber si faltan datos y qué patrón forman, si hay alguno.

Visualización de datos faltantes en RW/ GGMICE

Usemos is.na (MCAS) y haga clic en Ejecutar . Como podemos ver, hay un montón de VERDADERO y FALSO. Lo que podemos hacer es resumirlos usando la función colSums (is.na(MCAS)) porque FALSO y VERDADERO son cero y uno disfrazados. Esta es nuestra forma de comprobar si falta el valor o no.

Visualización de datos faltantes en RW/ GGMICE

Como se muestra a continuación, los valores que faltan se encuentran en tres columnas, como spc , totsc8 y avgsalary . Podemos ver la descripción de estas columnas en la sección de documentación de ayuda.

Visualización de datos faltantes en RW/ GGMICE

Además, al usar colSums (is.na(MCAS)) / nrow (MCAS), el número de filas se convertirá en porcentajes. Esta es una forma de verlo, pero no es lo más fácil de hacer.

Visualización de datos faltantes en RW/ GGMICE

En este caso, veamos qué puede hacer ggmice por nosotros. Usaremos la función BrowseVignettes (paquete = 'ggmice') , luego haremos clic en Ejecutar .

Visualización de datos faltantes en RW/ GGMICE

Se han encontrado algunas viñetas para esta función, así que elijamos ggmice y hagamos clic en el enlace HTML para ver algunos tutoriales útiles que podrían ayudar.

Visualización de datos faltantes en RW/ GGMICE

Visualización de datos faltantes en RW/ GGMICE

Volviendo al guión, usemos la función plot_pattern (MCAS) para pasar el conjunto de datos.

Visualización de datos faltantes en RW/ GGMICE

Para visualizarlo mejor, haga clic en el botón Zoom . Como se ilustra, de 155 observaciones, spc tiene 9 valores faltantes, 25 para avgsalary y 40 para totsc8 .

Intentaremos averiguar si alguno de estos coincide, cuántos hay y si tienden a estar en un grupo.

Visualización de datos faltantes en RW/ GGMICE

Para verificar esto, podemos probar la forma analógica usando la función de vista (MCAS) y luego haciendo clic en Ejecutar .

Visualización de datos faltantes en RW/ GGMICE

Esta es una especie de visor de hoja de cálculo donde podemos ver todos los valores que faltan. También podemos expandir esto haciendo clic en el botón Editor de código fuente .

Visualización de datos faltantes en RW/ GGMICE

Similar a Power Query , podemos ver las entradas totales y los NA son los valores faltantes. Notablemente, las entradas totales en la vista (MCAS) son 220, y solo 155 para plot_pattern (MCAS) porque probablemente hubo valores completos que no se trazaron per se.

Además, podemos ver que tienden a agruparse en función de las variables y las filas. Sin embargo, en muchos casos, solo falta uno u otro. La realidad es que es difícil hacer este visual fila por fila, así que aquí es donde entra la visualización.

Visualización de datos faltantes en RW/ GGMICE

Imputación de los datos que faltan

Lo siguiente que debe hacer es volver a nuestro script, luego escribir nrow (MCAS) y luego sum(is.na(MCAS)$totsc8)) .

En este caso, sabemos que faltan 40 valores de 200 observaciones. Usemos R como calculadora poniendo 40/200. Por lo tanto, tenemos alrededor de un 20 % de valores faltantes, que es mucho.

Idealmente, queremos saber por qué faltan tantos. Tal vez es solo cómo se recopilaron los datos, por lo que podemos imputar esto.

Visualización de datos faltantes en RW/ GGMICE

Para hacer eso, importemos el paquete de la biblioteca (ratones) . Este es uno de los métodos de imputación.

Visualización de datos faltantes en RW/ GGMICE

Luego, usemos las funciones MCAS_pred < –="" quickpred=""> y plot_pred(MCAS_pred) . Asegúrese de guardarlos, haga clic en Ejecutar y haga clic en el botón Zoom .

Visualización de datos faltantes en RW/ GGMICE

Si vamos a utilizar la imputación multivariante, este algoritmo encontrará observaciones y puntos de datos que son similares a los que faltan, y luego intentará completarlos.

Por ejemplo, las columnas spc . Estos serán útiles para predecir los valores faltantes al igual que totsc8 y avgsalary . En este punto, no lo estamos haciendo, pero estamos viendo qué valores y variables están relacionados que podrían ser útiles para impedir esos valores.

Visualización de datos faltantes en RW/ GGMICE

Probemos una cosa más. Vamos a usar ggmice (MCAS, aes(x=avgsalary, y=totsc8)) + geom_point ( ) , luego haga clic en Ejecutar .

Este es un diagrama de dispersión , excepto que estamos usando ggmice. Básicamente, la idea es que podamos ver la relación entre estas dos variables que tienen bastantes valores faltantes. Cuando uno de ellos falta y el otro está disponible, podemos ver dónde están esos puntos.

En esta situación, ambos se observan en uno de estos casos. Falta uno y el otro no. Si faltan ambos, no va a estar en la trama.

Visualización de datos faltantes en RW/ GGMICE


Editar datos en R con el paquete DataEditR
Prácticas recomendadas de Power Query para su modelo de datos
Cómo instalar paquetes R en LuckyTemplates

Conclusión

Cuando trabajamos con valores faltantes, es tentador usar un algoritmo como MICE porque es muy poderoso para imputar valores. Sin embargo, es mejor explorar los datos por sí mismo y entender lo que está pasando.

Idealmente, si nos faltan muchos datos, queremos averiguar por qué y tal vez podamos intentar obtener más datos o imputarlos. Siempre se prefiere ir directamente a la fuente.

Si terminamos queriendo imputar los valores que faltan, podemos hacer algunos métodos de imputación simples con el paquete tidyverse como la media o la mediana.

Sin duda, el paquete MICE es potente. Puede ser excesivo para cosas que son muy intensivas desde el punto de vista computacional, pero en este momento estamos enfocados solo en el elemento de visualización.

Espero que aprendas algo y siéntete libre de usar este paquete. Asegúrese de compartirlo e intente correr la voz porque es un buen paquete para trabajar con valores faltantes que son compatibles con ggplot2.

Mis mejores deseos,

Jorge

Leave a Comment

Time Intelligence en LuckyTemplates: cómo calcular el número de transacciones realizadas en los últimos N días

Time Intelligence en LuckyTemplates: cómo calcular el número de transacciones realizadas en los últimos N días

Descubra cómo calcular el total de transacciones realizadas en los últimos N días y obtenga información útil utilizando la inteligencia de tiempo en LuckyTemplates.

Cómo evaluar clústeres en sus datos mediante la técnica DAX en LuckyTemplates

Cómo evaluar clústeres en sus datos mediante la técnica DAX en LuckyTemplates

En este tutorial, demuestro cómo mostrar clústeres en sus datos permite extraer información valiosa usando técnicas DAX avanzadas.

¿Cuánto personal tenemos actualmente? Lógica de fechas múltiples en LuckyTemplates usando DAX

¿Cuánto personal tenemos actualmente? Lógica de fechas múltiples en LuckyTemplates usando DAX

En este tutorial, aprenderá a calcular la <strong>población actual del personal</strong> para las relaciones múltiples de la tabla de calendario mediante la función COUNTROWS y FILTER en LuckyTemplates.

Hacer una solicitud HTTP en Power Automate

Hacer una solicitud HTTP en Power Automate

Aprenda a crear una solicitud HTTP con Power Automate y cómo implementar soluciones efectivas para la automatización de tareas.

Programe un flujo de escritorio para que se ejecute en Power Automate

Programe un flujo de escritorio para que se ejecute en Power Automate

En este tutorial, aprenda cómo programar un flujo de escritorio en Power Automate para automatizar tareas en la web y su escritorio.

Power Automate Terminar Control de acción en flujos

Power Automate Terminar Control de acción en flujos

Aprenda a usar correctamente el control Terminar acción de Power Automate que termina las acciones en un flujo si no se cumple alguna de las condiciones.

Power Query: combinar archivos de varias carpetas

Power Query: combinar archivos de varias carpetas

Aprenda a combinar archivos de varias carpetas en su red, escritorio, OneDrive o SharePoint utilizando Power Query.

Tipos de flujo de Power Automate y cuándo usarlos

Tipos de flujo de Power Automate y cuándo usarlos

En este blog, analizamos las similitudes y diferencias entre los tipos de flujo de Power Automate y determinamos cuándo usar cada flujo. Encuentra la mejor opción de automatización.

Conectores de Power Automate: número, texto y fecha y hora

Conectores de Power Automate: número, texto y fecha y hora

Familiarízate con algunos conectores Power Automate integrados que transforman cadenas en otro formato: número, texto y fecha y hora.

Tutorial del analizador VertiPaq: relaciones e integridad referencial

Tutorial del analizador VertiPaq: relaciones e integridad referencial

Este tutorial detallado sobre el analizador VertiPaq en DAX Studio le enseñará cómo usar la pestaña Relaciones para optimizar su DAX y resolver problemas de integridad referencial.