No tienes acceso a esta clase

隆Contin煤a aprendiendo! 脷nete y comienza a potenciar tu carrera

Eliminaci贸n de valores faltantes: pairwise y listwise

18/21
Recursos

Aportes 3

Preguntas 0

Ordenar por:

驴Quieres ver m谩s aportes, preguntas y respuestas de la comunidad?

o inicia sesi贸n.

Eliminacion de Valores Faltantes

Cuando se trata de valores faltantes tenemos dos aproximaciones para el tratamiento de los mismos:

  • Eliminacion de valores faltantes: La eliminaci贸n de valores faltantes asume que los valores faltantes est谩n perdidos completamente al azar (MCAR). En cualquier otro caso, realizar una eliminaci贸n de valores faltantes podr谩 ocasionar sesgos en los an谩lisis y modelos subsecuentes. Por tanto, es importante investigar que mecanismos tienen los datos para asi evitar los sesgos a la hora de eliminarlos
  • Imputacion de valores faltantes: consiste en a帽adir valores en los datos faltantes para mantener el registro en el dataset

Pasos para la Eliminacion de Valores Faltantes

  • Observa el numero de observaciones y variables que tiene el conjunto de datos
riskfactors_df.shape
--> (245, 34)
  • Pairwise deletion (Eliminacion por pares)
#Pandas por defecto,ignora los registros con datos faltantes a la hora de hacer algun calculo
(
    riskfactors_df
    .weight_lbs
    .mean()
)
--> 174.26808510638298
  • Listwise deletion or Complete case (Eliminacion por lista o caso completo)
  1. Con base a 1 columna
(
    riskfactors_df
    .dropna(
        subset=['weight_lbs'], # indica la variable donde buscar los valores faltantes
        how='any' # any indica en cualquier registro que aparezca un valor faltante
    )
)
  1. Con base a 2 columnas
(
    riskfactors_df
    .dropna(
        subset=['weight_lbs', 'height_inch'], # indica el parametro donde buscar los valores faltantes
        how='any' # algoritmo con el que eliminar los registros
    )
    .shape
)

--> (234, 34)
  1. Con base a 2 columnas que tengan valores faltantes en los mismos registros
# elimina los registros en los que hayan valores faltantes en dos variables al mismo tiempo
(
    riskfactors_df
    .dropna(
        subset=['weight_lbs', 'height_inch'], # indica el parametro donde buscar los valores faltantes
        how='all' # all indica los registros donde hayan valores faltantes en ambas variables
    )
    .shape
)
--> (244, 34)
  • Representacion Grafica tras la eliminacion de valores faltantes
  1. Con any
(
    riskfactors_df
    .dropna(
        subset=['weight_lbs', 'height_inch'], # indica el parametro donde buscar los valores faltantes
        how='any' # any indica en cualquier registro que aparezca un valor faltante
    )
    .select_columns(['weight_lbs', 'height_inch'])
    .pipe(missingno.matrix)
)
  1. Con all
(
    riskfactors_df
    .dropna(
        subset=['weight_lbs', 'height_inch'], # indica el parametro donde buscar los valores faltantes
        how='all' # algoritmo con el que eliminar los registros
    )
    .select_columns(['weight_lbs', 'height_inch'])
    .pipe(missingno.matrix)
)

https://pandas.pydata.org/docs/reference/api/pandas.DataFrame.dropna.html

how{鈥榓ny鈥, 鈥榓ll鈥檥, default 鈥榓ny鈥

Determine if row or column is removed from DataFrame when we have at least one NA or all NA.

  • 鈥榓ny鈥 : If any NA values are present, drop that row or column.

  • 鈥榓ll鈥 : If all values are NA, drop that row or column.