Como adicionar uma fileira à Pandas DataFrame
-
.loc[index]
Método para adicionar a linha ao Pandas Dataframe com Listas - Anexar Dicionário como a linha para adicioná-lo ao Pandas Dataframe
-
Dataframe
append()
Método para adicionar uma linha
O Pandas é projetado para carregar um dataframe
totalmente preenchido. Podemos adicionar linha por linha a pandas.Dataframe
, utilizando várias abordagens como .loc
, dictionary
, pandas.concat()
ou DataFrame.append()
.
.loc[index]
Método para adicionar a linha ao Pandas Dataframe com Listas
O loc[index]
toma a nova lista como uma nova linha e a adiciona ao dado index
de pandas.Dataframe
.
Códigos de exemplo:
# 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)
Resultado:
Name Price Stock
0 Orange 34 Yes
1 Mango 4 No
2 Apple 14 Yes
ignore_index
será definido como True
quando passarmos um dicionário para a função append()
. Caso contrário, ele levantará erros.
Anexar Dicionário como a linha para adicioná-lo ao Pandas Dataframe
O método append()
pode tomar o valor do dicionário diretamente como uma linha e adicioná-lo a pandas dataframe
.
Códigos de exemplo:
# 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)
Resultado:
Name Price Stock
0 Orange 34 Yes
1 Apple 23 No
2 Mango 13 Yes
Dataframe append()
Método para adicionar uma linha
O método append()
pode anexar filas de outros dataframe
ao final do dataframe
original, e devolver um novo dataframe
. As colunas do novo dataframe
que não estão no original dataframe
também são adicionadas ao dataframe
existente e os valores das novas células são preenchidos com NaN
.
Códigos de exemplo:
import pandas as pd
fruit_list = [ ('Orange', 34, 'Yes' )]
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)
O ignore_index=True
irá ignorar o index
do novo dataframe
e atribuir-lhes um novo índice no dataframe
original.
Resultado:
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