Suelte filas específicas de Pandas Dataframe multiíndice

En este artículo, aprenderemos a eliminar filas específicas del DataFrame de múltiples índices.

Primero, vamos a crear el DataFrame de múltiples índices. Los pasos se dan a continuación:

Python3

import numpy as np
import pandas as pd
  
mldx_arrays = [np.array(['lion', 'lion', 'lion', 'bison',
                         'bison', 'bison', 'hawk', 'hawk',
                         'hawk']),
                 
               np.array(['height', 'weight', 'speed',
                         'height', 'weight', 'speed',
                         'height', 'weight', 'speed'])]
  
# creating a multi-index dataframe
# with random data
multiindex_df = pd.DataFrame(
  np.random.randn(9, 4), index=mldx_arrays,
  columns=['Type A', 'Type B', 'Type C', 'Type D'])
  
multiindex_df.index.names = ['level 0', 'level 1']
multiindex_df

Producción:

Ahora, tenemos que eliminar algunas filas del marco de datos de múltiples índices. Entonces, estamos usando el método drop() provisto por el módulo pandas. Esta función suelta filas o columnas en el marco de datos de pandas.

Sintaxis: df.drop(‘etiquetas’, nivel=0, eje=0, inplace=True)

Parámetros:

  • etiquetas: el parámetro mencionado entre comillas es el índice o las etiquetas de columna para soltar
  • eje: parámetro para soltar etiquetas de las filas (cuando el eje = 0 o ‘índice’) / columnas (cuando el eje = 1 o ‘columnas’).
  • nivel: el parámetro indica el número de nivel como 0,1, etc. para ayudar a identificar y manipular un nivel particular de datos en un marco de datos de múltiples índices. Por ejemplo, hay dos niveles en los ejemplos dados, es decir, el nivel 1 y el nivel 2.
  • inplace: parámetro para hacer la operación en el lugar y no devolver nada si su valor es True. Aquí en todos los ejemplos, el valor de inplace se da True para que haga la operación y luego no devuelva nada.

Ejemplo 1: para eliminar las filas que contienen ‘león’ en el nivel 0.

Aquí ‘león’ es el nombre de la etiqueta que queremos quitar,

  • nivel = 0, eje = 0 que representa las filas que se seleccionarán para su eliminación,
  • inplace=True dentro de la función df.drop() para que realice la tarea y no devuelva nada.

Python3

multiindex_df.drop('lion', level=0, axis=0, inplace=True)
multiindex_df

Producción:

Ejemplo 2: para eliminar las filas en el nivel 1 que contienen ‘peso’.

Aquí ‘peso’ es el nombre de la etiqueta que queremos colocar en el nivel 1 de cada una de las filas en el nivel 0,

  • nivel = 1, eje = 0 que representa las filas que se seleccionarán para su eliminación,
  • inplace=True dentro de la función df.drop() para que realice la tarea y no devuelva nada.

Python3

multiindex_df.drop('weight', level=1, axis=0, inplace=True)
multiindex_df

Producción:

Ejemplo 3: Para colocar una sola fila con una etiqueta como ‘peso’ en el nivel 1 dentro de ‘bisonte’ en el nivel 0.

Aquí (‘bison’, ‘weight’) están los nombres de las etiquetas que queremos eliminar del nivel 0 y 1 respectivamente. Simplemente significa que solo se eliminará la fila de la etiqueta ‘bisonte’ en el nivel 0, la etiqueta ‘peso’ del nivel 1. No es necesario mencionar el nivel, ya que involucra dos niveles, por lo que solo los nombres de las etiquetas entre comillas funcionarán bien,

  • axis=0, que representa que las filas se seleccionarán para su eliminación
  • inplace=True dentro de la función df.drop() para que realice la tarea y no devuelva nada.

Python3

multiindex_df.drop(('bison', 'weight'), axis=0, inplace=True)
multiindex_df

Producción:

Ejemplo 4: Para eliminar dos filas del nivel 0.

Aquí (‘bisonte’, ‘halcón’) están los nombres de las etiquetas que queremos eliminar del nivel 0 que contiene varias filas del nivel 1. Por lo tanto, la eliminación de las filas del nivel 0 dará como resultado la eliminación de las filas respectivas del nivel 1 también .

  • axis=0 que representa que las filas se seleccionarán para su eliminación,
  • inplace=True dentro de la función df.drop() para que realice la tarea y no devuelva nada.

Python3

multiindex_df.drop(['bison', 'hawk'], axis=0, inplace=True)
multiindex_df

Salida 4:

Publicación traducida automáticamente

Artículo escrito por rijushree100guha y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *