Skip to content
Tutoriales
Pandas
Adding Rows to Pandas DataFrame: A Step-by-Step Guide

Agregar filas a un DataFrame de Pandas: Una guía paso a paso

En proyectos de análisis de datos y aprendizaje automático, a menudo es necesario agregar nuevas observaciones a un DataFrame de Pandas. Ya sea que esté lidiando con datos de encuestas, lecturas de sensores o registros de comportamiento de usuarios, debe poder agregar nuevas filas a un DataFrame existente de manera eficiente. Pandas, una popular biblioteca de manipulación de datos en Python, ofrece varios métodos para agregar filas a un DataFrame. En este tutorial, exploraremos tres de ellos: .loc, .append y .concat. Vamos a sumergirnos.

¿Quieres crear visualizaciones de datos rápidamente 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 en entornos basados en Jupyter Notebook.

PyGWalker (opens in a new tab) convierte su DataFrame de Pandas (o DataFrame de Polars) en una interfaz de usuario visual donde puede arrastrar y soltar variables para crear gráficos fácilmente. Simplemente use el siguiente código:

pip install pygwalker
importar pygwalker como pyg
gwalker = pyg.walk(df)

Puede ejecutar PyGWalker ahora mismo con estas notebooks en línea:

¡Y no olvides darnos una ⭐️ en GitHub!

Ejecutar PyGWalker en Kaggle Notebook (opens in a new tab)Ejecutar PyGWalker en Google Colab (opens in a new tab)Darle a PyGWalker una ⭐️ 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)

Agregar una fila usando el método .loc

El método .loc en Pandas le permite seleccionar un subconjunto de un DataFrame según sus etiquetas. También puede usarlo para agregar una nueva fila al DataFrame. Así es cómo:

importar pandas como pd
 
# creando un DataFrame de muestra
df = pd.DataFrame({
   'Nombre': ['John', 'Sara', 'Tim'],
   'Edad': [25, 34, 41],
   'Ciudad': ['Nueva York', 'Londres', 'París']
})
 
# agregar una nueva fila usando .loc
df.loc[3] = ['Anna', 29, 'Berlín']
 
imprimir(df)

En el código anterior, primero creamos un DataFrame df con tres filas y tres columnas. Luego, usamos el método .loc y especificamos un índice de fila de 3. Finalmente, proporcionamos una lista de valores para la nueva fila.

Salida:

   Nombre  Edad      Ciudad
0    John    25  Nueva York
1    Sara    34     Londres
2     Tim    41       París
3    Anna    29     Berlín

Tenga en cuenta que el índice de fila de la nueva fila es 3, lo que significa que se agregará después de la última fila del DataFrame. También puede usar .loc para insertar una fila en una ubicación específica especificando la etiqueta de fila. Por ejemplo, para insertar una nueva fila después de la segunda fila del DataFrame, puede hacer:

# insertar una nueva fila después de la segunda fila
df.loc[2.5] = ['Peter', 37, 'Los Ángeles']
 
imprimir(df)

Salida:

   Nombre  Edad       Ciudad
0    John    25   Nueva York
1    Sara    34      Londres
2     Tim    41        París
2.5  Peter   37  Los Ángeles
3    Anna    29      Berlín

Aquí, insertamos la nueva fila después de la etiqueta 2 usando una etiqueta de 2.5. Pandas reordena automáticamente las etiquetas de fila para mantenerlas en orden ascendente.

Agregar una fila usando el método .append

El método .append en Pandas le permite combinar dos DataFrames verticalmente. Puede usarlo para agregar una nueva fila a un DataFrame pasando un DataFrame con una sola fila al método .append. Aquí tienes un ejemplo:

# creando una nueva fila como un DataFrame
nueva_fila = pd.DataFrame({
   'Nombre': ['Julia'],
   'Edad': [31],
   'Ciudad': ['Tokio']
})
 
# usar .append para agregar la nueva fila
df = df.append(nueva_fila, ignore_index=True)
 
imprimir(df)

Salida:

   Nombre  Edad     Ciudad
0    John    25  Nueva York
1    Sara    34    Londres
2     Tim    41      París
3    Anna    29     Berlín
4   Julia    31      Tokio

En el código anterior, primero creamos un nuevo DataFrame nueva_fila con una sola fila de datos. Luego, usamos el método .append y pasamos nueva_fila como argumento. El parámetro ignore_index=True le indica a Pandas que reindexe el DataFrame de 0 a 4.

Agregar múltiples filas usando el método .concat

El método .concat en Pandas le permite concatenar dos DataFrames a lo largo de un eje especificado. Puede usarlo para agregar múltiples filas a un DataFrame pasando una lista de DataFrames al método .concat. Así es cómo puede agregar dos nuevas filas al DataFrame df usando .concat.

# creando dos nuevas filas como DataFrames
nuevas_filas = [pd.DataFrame({
   'Nombre': ['María', 'Adam'],
   'Edad': [27, 45],
   'Ciudad': ['Sídney', 'Toronto']}), 
]
 
# usando .concat para agregar las nuevas filas
df = pd.concat([df] + nuevas_filas, ignore_index=True)
 
imprimir(df)

Salida:

   Nombre  Edad     Ciudad
0    John    25  Nueva York
1    Sara    34    Londres
2     Tim    41      París
3    Anna    29     Berlín
4   María    27    Sídney
5    Adam    45    Toronto

En el código anterior, primero creamos un DataFrame nuevo nuevas_filas con dos filas de datos. Luego, usamos el método .concat y pasamos [df] + nuevas_filas como argumento. El parámetro ignore_index=True le indica a Pandas que vuelva a indexar el DataFrame de 0 a 5. Por favor proporciona la traducción al español de este archivo markdown. Evita traducir el código como: import BlogHeader from '../../../components/blog-header'; import BeehiivEmbed from '../../../components/BeehiivEmbed'; import JSONldScript from '../../../components/jsonld-script'; Traduce el contenido de JSONldScript. Si hay un frontmatter, asegúrate de traducir el parámetro language al correspondiente es. Aquí está el archivo:

4 Maria 27 Sydney 5 Adam 45 Toronto


En el código anterior, primero creamos dos nuevos DataFrames `new_rows`. Luego, los pasamos como una lista al método `.concat` junto con `df`. El parámetro `ignore_index=True` reordena el índice de 0 a 5.

## Conclusión

En este tutorial, exploramos tres métodos diferentes para agregar nuevas filas a un DataFrame de Pandas en Python: `.loc`, `.append` y `.concat`. Cada método tiene sus ventajas y desventajas, dependiendo de la situación. El método `.loc` es útil cuando quieres agregar una sola fila en una ubicación específica. El método `.append` es una forma sencilla de agregar una sola fila al final de un DataFrame. El método `.concat` es ideal cuando quieres agregar múltiples filas a la vez. Conocer estos métodos te ayudará a manipular DataFrames de manera eficiente y efectiva en tus proyectos de análisis de datos y aprendizaje automático. ¡Feliz codificación!

import BeehiivEmbed from '../../../components/BeehiivEmbed';

<BeehiivEmbed />