Método DataFrame.reindex() 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 tutorial, aprenderemos sobre el método DataFrame.reindex() de pandas en Python. Exploraremos cómo cambiar el índice y las columnas de un DataFrame utilizando este método. El método DataFrame.reindex() nos permite reconciliar el DataFrame con un nuevo índice llenando los valores nulos en las ubicaciones que no tenían valor en el índice anterior.

Consejos para la MV

Después de que la máquina virtual (VM) haya terminado de iniciar, haz clic en la esquina superior izquierda para cambiar a la pestaña Notebook y acceder a Jupyter Notebook para practicar.

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

Si encuentras problemas durante el aprendizaje, no dudes en preguntarle a Labby. Proporciona comentarios después de la sesión y resolveremos rápidamente el problema para ti.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL pandas(("Pandas")) -.-> pandas/DataSelectionGroup(["Data Selection"]) python(("Python")) -.-> python/DataStructuresGroup(["Data Structures"]) python(("Python")) -.-> python/ModulesandPackagesGroup(["Modules and Packages"]) pandas(("Pandas")) -.-> pandas/AdvancedOperationsGroup(["Advanced Operations"]) python(("Python")) -.-> python/PythonStandardLibraryGroup(["Python Standard Library"]) python(("Python")) -.-> python/DataScienceandMachineLearningGroup(["Data Science and Machine Learning"]) pandas(("Pandas")) -.-> pandas/DataCleaningGroup(["Data Cleaning"]) pandas/DataSelectionGroup -.-> pandas/select_columns("Select Columns") pandas/DataSelectionGroup -.-> pandas/select_rows("Select Rows") python/DataStructuresGroup -.-> python/lists("Lists") pandas/DataCleaningGroup -.-> pandas/handle_missing_values("Handling Missing Values") python/ModulesandPackagesGroup -.-> python/importing_modules("Importing Modules") pandas/AdvancedOperationsGroup -.-> pandas/reshape_data("Reshaping Data") 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-68713{{"Método DataFrame.reindex() de Pandas"}} pandas/select_rows -.-> lab-68713{{"Método DataFrame.reindex() de Pandas"}} python/lists -.-> lab-68713{{"Método DataFrame.reindex() de Pandas"}} pandas/handle_missing_values -.-> lab-68713{{"Método DataFrame.reindex() de Pandas"}} python/importing_modules -.-> lab-68713{{"Método DataFrame.reindex() de Pandas"}} pandas/reshape_data -.-> lab-68713{{"Método DataFrame.reindex() de Pandas"}} python/data_collections -.-> lab-68713{{"Método DataFrame.reindex() de Pandas"}} python/data_serialization -.-> lab-68713{{"Método DataFrame.reindex() de Pandas"}} python/data_analysis -.-> lab-68713{{"Método DataFrame.reindex() de Pandas"}} end

Importar la librería pandas y crear un DataFrame

Comencemos importando la librería pandas y creando un DataFrame. Utilizaremos este DataFrame para demostrar el método DataFrame.reindex().

import pandas as pd

## Create a DataFrame
df = pd.DataFrame([[1, 6, 2], [3, 4, 6], [12, 1, 0]], columns=['A', 'B', 'C'], index=['index_1', 'index_2', 'index_3'])

Reindexar el DataFrame utilizando el parámetro index

Para reindexar el DataFrame cambiando el índice, pasa una lista de nuevas etiquetas de índice al método DataFrame.reindex(). Cualquier etiqueta de índice que no esté presente en el DataFrame original se llenará con valores NaN.

## Reindex the DataFrame with a new index
new_index = ['index_1', 'index_2', 'index_4']
reindexed_df = df.reindex(index=new_index)

print(reindexed_df)

Salida:

         A    B    C
index_1  1.0  6.0  2.0
index_2  3.0  4.0  6.0
index_4  NaN  NaN  NaN

Reindexar el DataFrame utilizando el parámetro columns

De manera similar, puedes reindexar el DataFrame cambiando las columnas utilizando el método DataFrame.reindex(). Proporciona una lista de nuevas etiquetas de columna al parámetro columns. Cualquier columna que no esté presente en el DataFrame original se llenará con valores NaN.

## Reindex the DataFrame with new columns
new_columns = ['A', 'C', 'D']
reindexed_df = df.reindex(columns=new_columns)

print(reindexed_df)

Salida:

         A    C    D
index_1  1.0  2.0  NaN
index_2  3.0  6.0  NaN
index_3  12.0  0.0  NaN

Rellenar valores nulos utilizando el parámetro fill_value

Si deseas rellenar los valores nulos con un valor específico, puedes utilizar el parámetro fill_value del método DataFrame.reindex(). Proporciona el valor deseado para rellenar los valores nulos.

## Reindex the DataFrame and fill null values with 2
new_index = ['index_1', 'index_2', 'index_4']
reindexed_df = df.reindex(index=new_index, fill_value=2)

print(reindexed_df)

Salida:

         A  B  C
index_1  1  6  2
index_2  3  4  6
index_4  2  2  2

Resumen

En este tutorial, aprendimos cómo reindexar un DataFrame utilizando el método DataFrame.reindex() en pandas. Exploramos cómo cambiar el índice y las columnas de un DataFrame, rellenar valores nulos y especificar un valor de relleno para los valores nulos. Saber cómo reindexar correctamente un DataFrame es útil para manipular y alinear datos en pandas.