Método de relleno hacia atrás en DataFrame de Pandas

PandasPandasBeginner
Practicar Ahora

💡 Este tutorial está traducido por IA desde la versión en inglés. Para ver la versión original, puedes hacer clic aquí

Introducción

En este laboratorio, aprenderemos a usar el método DataFrame.backfill() de la biblioteca Pandas. Este método nos permite llenar los valores faltantes en un DataFrame con los valores de la siguiente entrada en la misma columna. Aprenderemos a usar este método con varios parámetros para manejar efectivamente los datos 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.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL pandas(("Pandas")) -.-> pandas/DataSelectionGroup(["Data Selection"]) pandas(("Pandas")) -.-> pandas/DataCleaningGroup(["Data Cleaning"]) python(("Python")) -.-> python/ModulesandPackagesGroup(["Modules and Packages"]) python(("Python")) -.-> python/PythonStandardLibraryGroup(["Python Standard Library"]) python(("Python")) -.-> python/DataScienceandMachineLearningGroup(["Data Science and Machine Learning"]) pandas/DataSelectionGroup -.-> pandas/select_columns("Select Columns") pandas/DataSelectionGroup -.-> pandas/select_rows("Select Rows") pandas/DataCleaningGroup -.-> pandas/handle_missing_values("Handling Missing Values") python/ModulesandPackagesGroup -.-> python/using_packages("Using Packages") python/PythonStandardLibraryGroup -.-> python/data_collections("Data Collections") python/PythonStandardLibraryGroup -.-> python/data_serialization("Data Serialization") python/DataScienceandMachineLearningGroup -.-> python/data_analysis("Data Analysis") subgraph Lab Skills pandas/select_columns -.-> lab-68589{{"Método de relleno hacia atrás en DataFrame de Pandas"}} pandas/select_rows -.-> lab-68589{{"Método de relleno hacia atrás en DataFrame de Pandas"}} pandas/handle_missing_values -.-> lab-68589{{"Método de relleno hacia atrás en DataFrame de Pandas"}} python/using_packages -.-> lab-68589{{"Método de relleno hacia atrás en DataFrame de Pandas"}} python/data_collections -.-> lab-68589{{"Método de relleno hacia atrás en DataFrame de Pandas"}} python/data_serialization -.-> lab-68589{{"Método de relleno hacia atrás en DataFrame de Pandas"}} python/data_analysis -.-> lab-68589{{"Método de relleno hacia atrás en DataFrame de Pandas"}} end

Crear un DataFrame con valores faltantes

Primero, creemos un DataFrame con valores faltantes usando la biblioteca Pandas.

import pandas as pd

df = pd.DataFrame({'A': [None, 3, None, None],
                   'B': [2, 4, None, 3],
                   'C': [None, None, None, 1],
                   'D': [0, 1, 5, 4]},
                  columns=['A', 'B', 'C', 'D'])

print(df)

El código anterior crea un DataFrame con valores faltantes en las columnas 'A', 'B', 'C' y 'D'.

Rellenar valores faltantes usando DataFrame.backfill()

En este paso, usaremos el método DataFrame.backfill() para rellenar los valores faltantes en el DataFrame.

filled_df = df.bfill()

print(filled_df)

El método bfill() se aplica al DataFrame, y los valores faltantes se rellenan con el siguiente valor disponible en la misma columna.

Rellenar valores faltantes con axis=1

En este paso, usaremos el parámetro axis del método DataFrame.backfill() para rellenar los valores faltantes horizontalmente, es decir, a lo largo de las columnas.

filled_df = df.bfill(axis=1)

print(filled_df)

Al establecer axis=1, el método bfill() rellena los valores faltantes con los valores de la siguiente entrada disponible en la misma fila.

Limitar el número de valores NaN consecutivos rellenados

En este paso, usaremos el parámetro limit del método DataFrame.backfill() para limitar el número de valores NaN consecutivos rellenados.

filled_df = df.bfill(limit=2)

print(filled_df)

Al establecer limit = 2, el método bfill() solo rellenará un máximo de dos valores NaN consecutivos en cada columna.

Usar inplace=True para la modificación en el lugar

En este paso, usaremos el parámetro inplace del método DataFrame.backfill() para modificar el DataFrame en el lugar.

df.bfill(inplace=True)

print(df)

Al establecer inplace=True, el método bfill() modifica el DataFrame original en lugar de devolver un nuevo DataFrame.

Resumen

En este laboratorio, aprendimos cómo usar el método DataFrame.backfill() en la biblioteca Pandas. Cubrimos diferentes maneras de rellenar valores faltantes en un DataFrame, incluyendo rellenar vertical y horizontalmente, limitar el número de valores NaN consecutivos rellenados y realizar la operación de relleno en el lugar. Comprender cómo manejar los datos faltantes es esencial para las tareas de análisis y modelado de datos. El método backfill() es una herramienta útil al respecto.