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.
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.