Manejo de datos faltantes

Beginner

This tutorial is from open-source community. Access the source code

Introducción

En este laboratorio, aprenderemos a manejar los datos faltantes en pandas, un problema común en el análisis de datos. Cubriremos cómo identificar los datos faltantes, rellenar los valores faltantes y eliminar los datos que no se necesitan. También discutiremos el experimental escalar NA en pandas que se puede utilizar para denotar valores faltantes.

Consejos sobre la VM

Una vez que se haya iniciado la VM, haga clic en la esquina superior izquierda para cambiar a la pestaña Cuaderno y acceder a Jupyter Notebook para practicar.

A veces, es posible que tenga que esperar unos segundos a que Jupyter Notebook termine de cargarse. La validación de las operaciones no se puede automatizar debido a las limitaciones de Jupyter Notebook.

Si tiene problemas durante el aprendizaje, no dude en preguntar a Labby. Deje sus comentarios después de la sesión y lo resolveremos rápidamente para usted.

Este es un Guided Lab, que proporciona instrucciones paso a paso para ayudarte a aprender y practicar. Sigue las instrucciones cuidadosamente para completar cada paso y obtener experiencia práctica. Los datos históricos muestran que este es un laboratorio de nivel principiante con una tasa de finalización del 83%. Ha recibido una tasa de reseñas positivas del 95% por parte de los estudiantes.

Importar las bibliotecas necesarias y crear un DataFrame

Para comenzar, necesitamos importar las bibliotecas necesarias: pandas y NumPy. Luego, crearemos un DataFrame con algunos valores faltantes.

import pandas as pd
import numpy as np

## Crear un DataFrame con valores faltantes
df = pd.DataFrame(
   np.random.randn(5, 3),
   index=["a", "c", "e", "f", "h"],
   columns=["one", "two", "three"],
)
df["four"] = "bar"
df["five"] = df["one"] > 0
df2 = df.reindex(["a", "b", "c", "d", "e", "f", "g", "h"])

Detectar valores faltantes

A continuación, usaremos las funciones isna y notna para detectar valores faltantes.

## Use isna and notna to detect missing values
pd.isna(df2["one"])
df2["four"].notna()
df2.isna()

Insertar datos faltantes

Aquí, veremos cómo insertar valores faltantes en nuestros datos.

## Insertar valores faltantes
s = pd.Series([1., 2., 3.])
s.loc[0] = None

Realizar cálculos con datos faltantes

Realizaremos algunos cálculos aritméticos y estadísticos con datos faltantes.

## Realizar cálculos con datos faltantes
df["one"].sum()
df.mean(axis=1, numeric_only=True)
df.cumsum()

Eliminar etiquetas de eje con datos faltantes

Aprenderemos cómo excluir etiquetas con datos faltantes usando dropna.

df.dropna(axis=0)
df.dropna(axis=1)
df["one"].dropna()

Interpolar valores faltantes

Usaremos la función interpolate para rellenar los valores faltantes en un DataFrame.

df = pd.DataFrame(
   {
       "A": [1, 2.1, np.nan, 4.7, 5.6, 6.8],
       "B": [0.25, np.nan, np.nan, 4, 12.2, 14.4],
   }
)
df.interpolate()

Reemplazar valores genéricos

Aprenderemos cómo reemplazar valores arbitrarios con otros valores usando replace.

ser = pd.Series([0.0, 1.0, 2.0, 3.0, 4.0])
ser.replace(0, 5)

Comprender el escalar NA para denotar valores faltantes

Finalmente, discutiremos el escalar experimental NA en pandas que se puede usar para denotar valores faltantes.

s = pd.Series([1, 2, None], dtype="Int64")
s

Resumen

En este laboratorio, hemos aprendido cómo manejar datos faltantes usando pandas. Hemos cubierto cómo detectar, insertar, calcular con y eliminar datos faltantes. También hemos aprendido cómo interpolar y reemplazar valores faltantes. Por último, hemos discutido el escalar experimental NA en pandas para denotar valores faltantes. Este conocimiento será muy útil al tratar con tareas de análisis de datos del mundo real donde los datos faltantes a menudo son un problema común.