Cómo añadir una fila al DataFrame de Pandas

Asad Riaz 30 enero 2023
  1. .loc[index] método para añadir la fila al dataframe de Pandas con listas
  2. agregar el diccionario como la fila para agregarlo al Pandas DataFrame
  3. El método .append de Dataframe para añadir una fila
Cómo añadir una fila al DataFrame de Pandas

Pandas está diseñado para cargar un DataFrame completamente poblado. Podemos añadir una fila una a una a pandas.Dataframe. Esto se puede hacer usando varios enfoques como .loc, diccionarios, pandas.concat() o DataFrame.append().

.loc[index] método para añadir la fila al dataframe de Pandas con listas

.loc[index] tomará la nueva lista como una nueva fila y la añadirá al index dado de pandas.Dataframe.

Considere el siguiente código:

# python 3.x
import pandas as pd

# List of Tuples
fruit_list = [("Orange", 34, "Yes")]
# Create a DataFrame object
df = pd.DataFrame(fruit_list, columns=["Name", "Price", "Stock"])
# Add new ROW
df.loc[1] = ["Mango", 4, "No"]
df.loc[2] = ["Apple", 14, "Yes"]
print(df)

Producción :

     Name  Price Stock
0  Orange     34   Yes
1   Mango      4    No
2   Apple     14   Yes

agregar el diccionario como la fila para agregarlo al Pandas DataFrame

append() puede tomar el valor de un diccionario de pares de key-value directamente como una fila y añadirlo al DataFrame de los pandas.

Considera el siguiente código:

# python 3.x
import pandas as pd

# List of Tuples
fruit_list = [("Orange", 34, "Yes")]
# Create a DataFrame object
df = pd.DataFrame(fruit_list, columns=["Name", "Price", "Stock"])
# Add new ROW
df = df.append({"Name": "Apple", "Price": 23, "Stock": "No"}, ignore_index=True)
df = df.append({"Name": "Mango", "Price": 13, "Stock": "Yes"}, ignore_index=True)
print(df)

Producción :

     Name  Price Stock
0  Orange     34   Yes
1   Apple     23    No
2   Mango     13   Yes

El método .append de Dataframe para añadir una fila

.append puede ser usado para añadir filas de otros dataframes al final del DataFrame original, y devolver un nuevo DataFrame. Las columnas del nuevo DataFrame que no están en el datafarme original también se añaden al DataFrame existente y las nuevas celdas de valor se llenan con NaN.

Considera el siguiente código:

# python 3.x
import pandas as pd

# List of Tuples
fruit_list = [("Orange", 34, "Yes")]
# Create a DataFrame object
df = pd.DataFrame(fruit_list, columns=["Name", "Price", "Stock"])
print("Original DataFrame:")
print(df)
print(".............................")
print(".............................")
new_fruit_list = [("Apple", 34, "Yes", "small")]
dfNew = pd.DataFrame(new_fruit_list, columns=["Name", "Price", "Stock", "Type"])
print("Newly Created DataFrame:")
print(dfNew)
print(".............................")
print(".............................")
# append one dataframe to othher
df = df.append(dfNew, ignore_index=True)
print("Copying DataFrame to orignal...")
print(df)

ignore_index=True ignorará el index del nuevo DataFrame y le asignará un nuevo índice del DataFrame original.

Producción :

Original DataFrame:
     Name  Price Stock
0  Orange     34   Yes
.............................
.............................
Newly Created DataFrame:
    Name  Price Stock   Type
0  Apple     34   Yes  small
.............................
.............................
Copying  DataFrame to original..:
     Name  Price Stock   Type
0  Orange     34   Yes    NaN
1   Apple     34   Yes  small

Artículo relacionado - Pandas DataFrame