Skip to content

Añadir una nueva columna a un DataFrame de Pandas: Métodos y técnicas

Trabajar con dataframes es una parte esencial del análisis de datos y la ciencia de datos. Pandas es una biblioteca ampliamente utilizada para la manipulación y análisis de datos, y proporciona una forma fácil de usar y flexible de trabajar con dataframes. Un dataframe es una estructura de datos bidimensional etiquetada con columnas de diferentes tipos. Es similar a una hoja de cálculo o una tabla SQL, pero con más potencia y flexibilidad. En este artículo, aprenderemos cómo agregar una nueva columna a un dataframe de Pandas existente. También discutiremos diferentes métodos y técnicas para insertar una nueva columna en un dataframe de Pandas.

¿Quieres crear rápidamente visualizaciones de datos en Python?

PyGWalker es un proyecto de Python de código abierto que puede ayudar a acelerar el flujo de trabajo de análisis y visualización de datos directamente dentro de entornos basados en Jupyter Notebook.

PyGWalker (opens in a new tab) convierte tu dataframe de Pandas (o dataframe de Polars) en una interfaz de usuario visual donde puedes arrastrar y soltar variables para crear gráficos con facilidad. Simplemente usa el siguiente código:

pip install pygwalker
import pygwalker as pyg
gwalker = pyg.walk(df)

Puedes ejecutar PyGWalker ahora mismo con estos cuadernos en línea:

¡Y no olvides darle una ⭐️ en GitHub!

Ejecutar PyGWalker en Kaggle Notebook (opens in a new tab)Ejecutar PyGWalker en Google Colab (opens in a new tab)Darle una ⭐️ a PyGWalker en GitHub (opens in a new tab)
Ejecutar PyGWalker en Kaggle Notebook (opens in a new tab)Ejecutar PyGWalker en Google Colab (opens in a new tab)Ejecutar PyGWalker en Google Colab (opens in a new tab)

¿Qué es un DataFrame de Pandas?

Un dataframe de Pandas es una estructura de datos bidimensional con ejes etiquetados. Es similar a una hoja de cálculo o una tabla SQL, pero con más potencia y flexibilidad. Se puede crear un dataframe a partir de diversos formatos de datos de entrada como CSV, Excel, base de datos SQL y otros. Un dataframe se puede manipular y analizar utilizando diversos métodos y funciones proporcionadas por la biblioteca Pandas.

¿Cómo agregar una nueva columna a un DataFrame de Pandas?

Para agregar una nueva columna a un dataframe de Pandas existente, podemos utilizar varios métodos y técnicas. La forma más común de agregar una nueva columna es mediante una asignación simple. Veamos un ejemplo.

Supongamos que tenemos un dataframe con dos columnas: 'Nombre' y 'Edad'.

import pandas as pd
 
data = {
    'Nombre': ['Alice', 'Bob', 'Charlie', 'David'],
    'Edad': [25, 30, 35, 40]
}
 
df = pd.DataFrame(data)
print(df)

Salida:

       Nombre  Edad
0     Alice   25
1       Bob   30
2   Charlie   35
3     David   40

Ahora, queremos agregar una nueva columna 'Salario' al dataframe. Podemos usar una asignación simple de la siguiente manera.

df['Salario'] = [50000, 60000, 70000, 80000]
print(df)

Salida:

       Nombre  Edad  Salario
0     Alice   25   50000
1       Bob   30   60000
2   Charlie   35   70000
3     David   40   80000

Podemos ver que se ha agregado una nueva columna 'Salario' al dataframe.

Diferentes métodos para insertar una nueva columna en un DataFrame de Pandas

Existen varios métodos y técnicas para insertar una nueva columna en un dataframe de Pandas. Veamos cada uno de ellos.

Método 1: Asignación simple

Como hemos visto en el ejemplo anterior, podemos agregar una nueva columna a un dataframe utilizando una asignación simple. Podemos asignar una lista o un array de numpy a un nuevo nombre de columna en el dataframe como se muestra a continuación.

df['NuevaColumna'] = [1, 2, 3, 4]

Método 2: Método insert

Otra forma de insertar una nueva columna en un dataframe de Pandas es utilizar el método insert. El método insert toma tres argumentos: loc (ubicación), column (columna) y value (valor). loc es el índice de la columna donde queremos insertar la nueva columna. column es el nombre de la nueva columna, y value es el valor que queremos asignar a la nueva columna.

df.insert(loc=1, column='NuevaColumna', value=[1, 2, 3, 4])

Método 3: Método concatenate (concatenar)

También podemos concatenar dos dataframes a lo largo del eje 1 para agregar una nueva columna a un dataframe existente. La nueva columna se agregará en el lado derecho del dataframe existente. El método concat toma dos dataframes como argumentos y los concatena a lo largo del eje 1.

df2 = pd.DataFrame({'NuevaColumna': [1, 2, 3, 4]})
df = pd.concat([df, df2], axis=1)

Método 4: Método assign (asignar)

El método assign nos permite crear una nueva columna en un dataframe y devolver un nuevo dataframe con la nueva columna. Toma un diccionario como argumento, donde cada clave representa un nuevo nombre de columna y cada valor representa los valores de la nueva columna.

df = df.assign(NuevaColumna=[1, 2, 3, 4])

¿Puedo sobrescribir una columna existente en un DataFrame de Pandas mientras agrego una nueva columna?

Sí, podemos sobrescribir una columna existente en un DataFrame de Pandas mientras agregamos una nueva columna. Cuando asignamos valores a una columna, los valores existentes de esa columna se reemplazan con los nuevos valores.

df['Edad'] = [26, 31, 36, 41]

¿Cómo puedo insertar columnas en una ubicación específica en un DataFrame de Pandas?

Podemos insertar columnas en una ubicación específica en un DataFrame de Pandas utilizando el método insert. El parámetro loc especifica la posición en la que se va a insertar la columna. Podemos utilizar el índice entero de la columna para especificar su posición.

df.insert(2, 'NuevaColumna', [1, 2, 3, 4])

También podemos utilizar el nombre de la columna para especificar su posición.

df.insert(df.columns.get_loc("Edad"), 'NuevaColumna', [1, 2, 3, 4])

Conclusión

En este artículo, hemos aprendido cómo agregar una nueva columna a un DataFrame existente de Pandas. Hemos discutido diferentes métodos y técnicas para insertar una nueva columna en un DataFrame de Pandas, incluyendo la asignación simple, el método insert, el método concatenate y el método assign. También hemos discutido cómo sobrescribir una columna existente mientras se agrega una nueva columna y cómo insertar columnas en una ubicación específica en un DataFrame de Pandas. Utilizando estas técnicas, puedes manipular tus DataFrames de manera eficiente y efectiva.