Cambiar el nombre de columnas de tramas de datos específicas en Pandas

Fariba Laiq 15 febrero 2024
  1. Use el método rename() para cambiar el nombre de una columna de DataFrame en Pandas
  2. Use el método rename() para cambiar el nombre de varias columnas de DataFrame en Pandas
  3. Use la función Lambda para cambiar el nombre de las columnas del marco de datos en Pandas
  4. Use la función set_axis() para cambiar el nombre de las columnas de DataFrame en Pandas
  5. Utilice la función columns.str.replace() para reemplazar textos específicos de nombres de columnas en Pandas
  6. Cambiar el nombre de las columnas pasando la lista actualizada de nombres de columnas en Pandas
Cambiar el nombre de columnas de tramas de datos específicas en Pandas

La cuadrícula rectangular donde se almacenan los datos en filas y columnas en Python se conoce como marco de datos de Pandas. Cada fila representa una medida de una sola instancia y cada columna es un vector de datos para un solo atributo o variable.

Las filas del marco de datos pueden tener datos homogéneos o heterogéneos en cualquier fila dada, pero cada columna del marco de datos contiene datos homogéneos en cualquier columna dada. A diferencia de una matriz bidimensional, un marco de datos en Pandas tiene ejes etiquetados.

Use el método rename() para cambiar el nombre de una columna de DataFrame en Pandas

Las columnas e índices del dataframe de Pandas se pueden renombrar usando el método rename(). Para mayor claridad, se recomiendan argumentos de palabras clave.

Dependiendo de los valores en el diccionario, podemos usar este método para renombrar una sola columna o varias columnas.

Código de ejemplo:

import pandas as pd

d1 = {"Names": ["Harry", "Petter", "Daniel", "Ron"], "ID": [1, 2, 3, 4]}
df = pd.DataFrame(d1)
display(df)
# rename columns
df1 = df.rename(columns={"Names": "Student Names"})
display("After renaming the columns:", df1)

Producción:

Pandas cambia el nombre de una sola columna usando el método de cambio de nombre

Use el método rename() para cambiar el nombre de varias columnas de DataFrame en Pandas

En el siguiente ejemplo, se muestra que podemos cambiar el nombre de varias columnas a la vez. La columna id se renombra con Roll No, y Student Names reemplaza a Names.

Código de ejemplo:

import pandas as pd

df1 = pd.DataFrame(
    {"id": ["ID1", "ID2", "ID3", "ID4"], "Names": ["Harry", "Petter", "Daniel", "Ron"]}
)
display(df1)
df = pd.DataFrame(df1)
df1.rename({"id": "Roll No", "Names": "Student Names"}, axis="columns", inplace=True)
display(df1)

Producción:

Pandas cambia el nombre de varias columnas usando el método de cambio de nombre

Use la función Lambda para cambiar el nombre de las columnas del marco de datos en Pandas

La función lambda es una función anónima sencilla que solo admite una expresión pero acepta una cantidad ilimitada de argumentos. Podemos utilizarlo si necesitamos cambiar todas las columnas simultáneamente.

Es útil si hay varias columnas y es difícil cambiarles el nombre usando una lista o un diccionario. En el siguiente ejemplo, agregamos dos puntos (:) al final de cada nombre de columna usando la función lambda.

Código de ejemplo:

import pandas as pd

df1 = pd.DataFrame(
    {"id": ["ID1", "ID2", "ID3", "ID4"], "Names": ["Harry", "Petter", "Daniel", "Ron"]}
)
display(df1)
frames = [df1, df2]
df = df1.rename(columns=lambda x: "Student " + x)
display(df)

Producción:

Pandas cambia el nombre de las columnas usando Lambda

Use la función set_axis() para cambiar el nombre de las columnas de DataFrame en Pandas

En el siguiente ejemplo, usaremos el método set_axis() para cambiar el nombre de la columna. Como argumento, proporcionaremos el nuevo nombre de la columna y el eje al que se le debe cambiar el nombre.

import pandas as pd

df1 = pd.DataFrame(
    {"id": ["ID1", "ID2", "ID3", "ID4"], "Names": ["Harry", "Petter", "Daniel", "Ron"]}
)
display(df1)
df1.set_axis(["A", "B"], axis="columns", inplace=True)
display(df1)

Producción:

Pandas cambia el nombre de las columnas usando Set_Axis

Utilice la función columns.str.replace() para reemplazar textos específicos de nombres de columnas en Pandas

En este ejemplo, usaremos la función replace() para cambiar el nombre de la columna. Como argumento para la columna, proporcionaremos el nombre antiguo y el nuevo.

import pandas as pd

df1 = pd.DataFrame(
    {
        "id": ["ID1", "ID2", "ID3", "ID4"],
        "Names": ["Harry", "Petter", "Daniel", "Ron"],
        "Department": ["English", "Science", "General Knowledge", "Arts"],
    }
)
display(df1)
df1.set_axis(["A", "B", "C"], axis="columns", inplace=True)
df1.columns = df1.columns.str.replace("Id", "Rollno")
df1.columns = df1.columns.str.replace("Names", "Students")
df1.columns = df1.columns.str.replace("Department", "Program")
df1.head()
display(df1)

Producción:

Pandas cambia el nombre de las columnas usando Str Replace

Cambiar el nombre de las columnas pasando la lista actualizada de nombres de columnas en Pandas

Las columnas también se pueden cambiar cambiando directamente los nombres de las columnas configurando una lista con los nuevos nombres en la propiedad de columnas del objeto Dataframe. El inconveniente de este enfoque es que debemos ofrecer nombres para todos ellos, incluso si solo deseamos cambiar el nombre de parte de las columnas.

Código de ejemplo:

import pandas as pd

df1 = pd.DataFrame(
    {
        "id": ["ID1", "ID2", "ID3", "ID4"],
        "Names": ["Harry", "Petter", "Daniel", "Ron"],
        "Department": ["English", "Science", "General Knowledge", "Arts"],
    }
)
display(df1)
df1.columns = ["Rollno", "Students", "Program"]
display(df1)

Producción:

Pandas cambia el nombre de las columnas al pasar la lista actualizada

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 Column