Mover columna al frente en Pandas DataFrame

Fariba Laiq 13 junio 2022
Mover columna al frente en Pandas DataFrame

Python tiene una biblioteca de análisis de datos llamada Pandas. Podemos realizar muchos tipos diferentes de manipulación en un DataFrame usando Pandas en Python.

Esta guía explicará los métodos para reordenar las columnas en un DataFrame de pandas de modo que se mueva al frente.

Mover una columna al frente en Pandas DataFrame

Supongamos que queremos reorganizar las posiciones de las columnas en el DataFrame. Pandas proporciona los métodos insert() y reindex() que mueven una sola columna al frente de Pandas DataFrame.

Utilice los métodos pop() y insert()

La idea es quitar la columna que queremos mover al frente usando el método pop(). Luego inserte la columna nuevamente en el DataFrame utilizando el método insert() especificando la ubicación para insertar.

En el siguiente código, tenemos un DataFrame que consta de registros de estudiantes. Nuestro objetivo es mover la columna Name al frente.

Primero, lo eliminaremos usando el método pop(), el método pop() toma como parámetro la etiqueta de la columna que queremos eliminar y la devuelve. Almacenamos la columna devuelta en la col.

A través del método insert(), empujamos la columna de regreso al DataFrame definiendo su ubicación como loc=0 (posición de la primera columna), el nombre de la columna y la columna real).

Código de ejemplo:

# Python 3.x
import pandas as pd

student = {
    "Course": ["Java", "Python", "C++", "Dart"],
    "Marks": [70, 80, 90, 60],
    "Age": [19, 20, 21, 19],
    "Name": ["Jhon", "Aliya", "Nate", "Amber"],
}
df = pd.DataFrame(student)
print(df)
col = df.pop("Name")
df.insert(loc=0, column="Name", value=col)
print(df)

Producción :

$python3 Main.py

   Course  Marks  Age   Name
0    Java     70   19   Jhon
1  Python     80   20  Aliya
2     C++     90   21   Nate
3    Dart     60   19  Amber
    Name  Course  Marks  Age
0   Jhon    Java     70   19
1  Aliya  Python     80   20
2   Nate     C++     90   21
3  Amber    Dart     60   19

Usa el método reindex()

Podemos reorganizar las columnas reindexándolas. El método reindex() reordena las columnas.

Este método está disponible en el módulo pandas.DataFrame. Proporcionaremos la lista de nombres de columna en el orden deseado y pasaremos la lista y el DataFrame al método reindex() para devolver el Marco de datos actualizado.

Código de ejemplo:

# Python 3.x
import pandas as pd

student = {
    "Course": ["Java", "Python", "C++", "Dart"],
    "Marks": [70, 80, 90, 60],
    "Age": [19, 20, 21, 19],
    "Name": ["Jhon", "Aliya", "Nate", "Amber"],
}
df = pd.DataFrame(student)
print(df)
df = pd.DataFrame.reindex(df, columns=["Name", "Course", "Marks", "Age"])
print(df)

Producción :

$python3 Main.py

   Course  Marks  Age   Name
0    Java     70   19   Jhon
1  Python     80   20  Aliya
2     C++     90   21   Nate
3    Dart     60   19  Amber
    Name  Course  Marks  Age
0   Jhon    Java     70   19
1  Aliya  Python     80   20
2   Nate     C++     90   21
3  Amber    Dart     60   19
Fariba Laiq avatar Fariba Laiq avatar

I am Fariba Laiq from Pakistan. An android app developer, technical content writer, and coding instructor. Writing has always been one of my passions. I love to learn, implement and convey my knowledge to others.

LinkedIn

Artículo relacionado - Pandas DataFrame