No tienes acceso a esta clase

¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera

No se trata de lo que quieres comprar, sino de quién quieres ser. Invierte en tu educación con el precio especial

Antes: $249

Currency
$209

Paga en 4 cuotas sin intereses

Paga en 4 cuotas sin intereses
Suscríbete

Termina en:

11 Días
21 Hrs
12 Min
37 Seg

Visualización de valores faltantes en una variable

14/21
Recursos
  • En el caso de que estén teniendo problemas con el método displot de Seaborn lo que tienen que hacer es simplemente actualizar Seaborn a su última versión
!pip install seaborn

Aportes 5

Preguntas 3

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

  • Comparando los datos faltantes de la variable Peso con los valores de la variable Edad
(
    riskfactors_df
    .missing.bind_shadow_matrix(only_missing=True)
    .pipe(
        lambda df: (
            sns.boxenplot(
                data=df,
                x = 'weight_lbs_NA', #variables con datos faltantes
                y = 'age'  #variable de comparacion
            )
        )
    )
)
  • Visualizacion alternativa mediante funciones de densidad
(
    riskfactors_df
    .missing.bind_shadow_matrix(only_missing=True)
    .pipe(
        lambda df: (
            sns.displot(
                data=df,
                x = 'age', #variable de distribucion
                hue = 'weight_lbs_NA',  #variable de comparacion
                kind= 'kde' #distribucion de densidad
            )
        )
    )
)
  • Visualizacion de la variable Edad y los valores faltantes de la variable Peso mediante histogramas independientes. Este tipo de grafico son muy dificiles de comparar debido a que tenemos mas datos que no faltan de los que faltan
(
    riskfactors_df
    .missing.bind_shadow_matrix(only_missing=True)
    .pipe(
        lambda df: (
            sns.displot(
                data=df,
                x = 'age', #variable de distribucion
                col = 'weight_lbs_NA',  #variable de comparacion
                
            )
        )
    )
)
  • Visualizacion altenativa de los datos anteriores donde el eje de las Y es independiente para cada grafico
# Eje de las y independientes para cada grafico
(
    riskfactors_df
    .missing.bind_shadow_matrix(only_missing=True)
    .pipe(
        lambda df: (
            sns.displot(
                data=df,
                x = 'age', #variable de distribucion
                col = 'weight_lbs_NA',  #variable de comparacion
                facet_kws={
                    'sharey': False
                }               
            )
        )
    )
)
  • Grilla de graficos con dos variables de datos faltantes
(
    riskfactors_df
    .missing.bind_shadow_matrix(only_missing=True)
    .pipe(
        lambda df: (
            sns.displot(
                data=df,
                x = 'age', #variable de distribucion
                col = 'marital_NA',  #variable de comparacion
                row = 'weight_lbs_NA'               
            )
        )
    )
)

La visualizacion de valores faltantes en una variable permite detectar si esta ocurriendo un sesgo en la presencia o ausencia de valores faltantes ocasionado por otra variable

En la grafica displot me salia este error:


ValueError: Multi-dimensional indexing (e.g. obj[:, None]) is no longer supported. Convert to a numpy array before indexing instead.


Por lo que cambie el codigo este:

(    
	riskfactors_df    
	.missing    
	.bind_shadow_matrix(only_missing=True)    
	.pipe(        
		lambda df:(           
			sns.displot(                
				data = df,                
				x = 'age',                
				kind = 'kde'                
				hue = 'weight_lbs_NA'       
			)            
		)    
	)
)

Por este codigo:


(    
	riskfactors_df    
	.missing    
	.bind_shadow_matrix(only_missing=True)    
	.pipe(        
		lambda df:(           
			sns.displot(                
				data = df,                
				x = 'age',                
				kind = 'kde'                
				hue = 'weight_lbs_NA',  
				fill = True
			)            
		)    
	)
)

Y me funcionó.

En esta clase aplicamos el concepto de la matriz de sombras para crear visualizaciones de una variable que no tiene valores faltantes, con otra que sí, permitiéndote construir visualizaciones que te ayuden a identificar rápidamente si existen sesgos o no en la presencia o ausencia de otros valores faltantes.

Pregunta: A raíz del análisis de la columna age vs la presencia / ausencia de nulos en otras columnas, se me ocurre entrenar un modelo que sea capaz de predecir en función de una edad, cuál sería la probabilidad de que haya nulos. Sin embargo el problema es que precisamente el análisis debería tener datos sobre los nulos. Lo que me preocupa es la naturaleza de los datos *(son nulos)*. De qué forma podría hacerlo? Se me ocurre usar como variable objetivo a la edad, y como variables de análisis las columnas binarias de la matriz de sombras. Quizás una regresión logística. Es posible hacer esto?