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. Aprovecha el precio especial.

Antes: $249

Currency
$209

Paga en 4 cuotas sin intereses

Paga en 4 cuotas sin intereses
Suscríbete

Termina en:

13 Días
18 Hrs
49 Min
42 Seg

Matriz de sombras: shadow matrix

13/21
Recursos

Aportes 9

Preguntas 1

Ordenar por:

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

Preguntando por los valores faltantes de “pregnant” según la edad, podemos ver que donde hay datos la media de edad es de 33 y la edad máxima es de 44 (mujeres en edad reproductiva). Mientras que para los valores faltantes, la media de edad es de 61 y la edad máxima de 97 (mujeres que probablemente no están en edad reproductiva). Por lo tanto, podemos inferir que los valores faltante en “pregnant” están relacionados con la variable “age”.

Construccion de la Matriz de Sombra

(
    riskfactors_df
    .isna() #crea una matriz de booleanos del dataframe
    .replace({ #reemplaza los valores booleanos por valores adecuados
        False:"Not missing",
        True:"Missing"
    })
    .add_suffix("_NA") #agrega un sufijo en cada variable
    .pipe(
        lambda shadow_matrix: pd.concat(  # concatena los valores de la matriz de sombra a la derecha del dataframe
            [riskfactors_df, shadow_matrix],
            axis="columns"
        )
    )
)

Construcion de la Matriz de Sombra utilizando la funcion de utileria bind_shadow_matrix

(
    riskfactors_df
    .missing
    .bind_shadow_matrix(only_missing=True) # con este parametro = True solo se pasaran las variables que tienen valores faltantes
)

Explorando estadisticos utilizando las nuevas columnas de la matriz de sombra

# Nos ayuda a encontrar si existe diferencias de alguna variable referente a la ausencia de otra
(
    riskfactors_df
    .missing.bind_shadow_matrix(only_missing=True) #une la matriz de sombra creada
    .groupby(["weight_lbs_NA"]) # agrupar por la ausencia de la variable peso 
    ["age"] # variable age como referencia
    .describe()
    .reset_index()
)

Matriz de Sombra

Permiten establecer relaciones entre las variables que tienen todas sus observaciones y la ausencia o presencia de otras variables de forma que se pueda comparar estadisticos o visualizarlos de manera efectiva

Como crear una matriz de sombra

Resultados de la creacion de la Matriz de Sombra

Recuerden cambiar las variables 'weight_lbs y 'heigth_inch a tipo float64 ya que si se dejan como object (originalmente), no va realizar la descripción de forma númerica, los tomará como si fueran variables no númericas.

13. Matriz de sombras: shadow matrix

  • Con la matriz de sombras podemos identificar relaciones entre variables de datos faltantes.
  1. Identifica todos tus valores faltantes.
  2. Reemplaza los valores faltantes con True (1) y el resto con False (0).
  3. Reemplaza los True y False por algo que te sea más informativo. Añade un sufijo a los nombres de tus variables.

La diferencia de media de edad entre los datos faltantes y no es de 4 años, lo cual similar al caso que uso el profe y puedaramos decir:

Los datos faltantes de peso e indice de masa corporal son valores faltantes de tipo MAR ya que probablemente la bascula estaba fuera de servicio. 👍🏼

La matriz de sombra ES una técnica usada en la ciencia de datos para identificar valores faltantes en un conjunto de datos. Esta matriz es una versión binaria del conjunto de datos original, donde se asigna 1 a los valores faltantes y 0 a los valores presentes. Es útil para visualizar patrones de datos faltantes y para realizar análisis que puedan depender de estos patrones. Aquí hay un pequeño ejemplo de cómo crear una matriz de sombra usando Pandas: `import pandas as pd` `import numpy as np` `# Crear un DataFrame de ejemplo` `data = {'A': [1, 2, np.nan, 4],` ` 'B': [np.nan, 2, 3, 4],` ` 'C': [1, 2, 3, np.nan]}` `df = pd.DataFrame(data)` `# Crear la matriz de sombra` `shadow_matrix = df.isnull().astype(int)` `print(shadow_matrix)`

genial!