Método droplevel del DataFrame de Pandas

PythonPythonBeginner
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 droplevel() de la biblioteca Pandas para Python. El método droplevel() se utiliza para eliminar uno o más niveles del índice o de la columna de un DataFrame. Veremos ejemplos para entender cómo usar este método.

Consejos sobre la VM

Una vez finalizada la inicialización de 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 su retroalimentación después de la sesión y resolveremos el problema para usted de inmediato.

Importar las bibliotecas necesarias

Para comenzar, necesitamos importar la biblioteca pandas, ya que proporciona la funcionalidad para trabajar con datos en un formato tabular.

import pandas as pd

Crear un DataFrame

A continuación, creemos un DataFrame con el que trabajar. Usaremos la función pd.DataFrame() para crear un DataFrame con algunos datos de muestra. También estableceremos un índice jerárquico utilizando el método set_index().

df = pd.DataFrame([[1, 2, 3, 4],[5, 6, 7, 8],[9, 10, 11, 12]]).set_index([0, 1]).rename_axis(['a', 'b'])
df.columns = pd.MultiIndex.from_tuples([('c', 'e'), ('d', 'f')], names=['level_1', 'level_2'])
print(df)

Eliminar un nivel del índice

Podemos usar el método droplevel() para eliminar un nivel del índice del DataFrame. Para hacer esto, debemos especificar el nivel que queremos eliminar como argumento del método droplevel(). El método devolverá un nuevo DataFrame con el nivel especificado eliminado.

dropped_level_df = df.droplevel('a')
print(dropped_level_df)

Eliminar un nivel de las columnas

Del mismo modo, podemos eliminar un nivel de las columnas del DataFrame utilizando el método droplevel(). Debemos especificar el nivel que queremos eliminar y el parámetro de eje como 1 para indicar que estamos eliminando un nivel de las columnas.

dropped_level_df = df.droplevel('level_2', axis=1)
print(dropped_level_df)

Eliminar múltiples niveles del índice

En algunos casos, es posible que queramos eliminar múltiples niveles del índice. Para hacer esto, podemos pasar una lista de niveles al método droplevel(). El método eliminará todos los niveles especificados del índice y devolverá un nuevo DataFrame.

dropped_levels_df = df.droplevel(['a', 'b'])
print(dropped_levels_df)

Resumen

En este laboratorio, aprendimos cómo usar el método droplevel() en la biblioteca Pandas para Python. Aprendimos cómo eliminar un nivel del índice y las columnas de un DataFrame usando este método. También aprendimos cómo eliminar múltiples niveles del índice. Este método es útil cuando queremos manipular la estructura de un DataFrame eliminando niveles innecesarios de su índice o columnas.