Add One Row to Pandas DataFrame
-
.loc[index]
Method to Add the Row to Pandas Dataframe With Lists - Append Dictionary as the Row to Add It to Pandas Dataframe
-
Dataframe
append()
Method to Add a Row
Pandas is designed to load a fully populated DataFrame
. We can add row one by one to pandas.Dataframe
by using various approaches like .loc
, dictionaries
, pandas.concat()
or DataFrame.append()
.
.loc[index]
Method to Add the Row to Pandas Dataframe With Lists
loc[index]
takes the new list as a new row and add it to the given index
of pandas.Dataframe
.
Example Codes:
# 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)
Output:
Name Price Stock
0 Orange 34 Yes
1 Mango 4 No
2 Apple 14 Yes
ignore_index
shall be set to be True
when we pass a dictionary to the append()
function. Otherwise, it will raise errors.
Append Dictionary as the Row to Add It to Pandas Dataframe
The append()
method can take the dictionary’s value directly as a row and add it to pandas DataFrame
.
Example Codes:
# 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)
Output:
Name Price Stock
0 Orange 34 Yes
1 Apple 23 No
2 Mango 13 Yes
Dataframe append()
Method to Add a Row
append()
method could append rows of other DataFrame
to the end of the original DataFrame
, and return a new DataFrame
. Columns of the new DataFrame
which are not in the original datafarme
are also added to the existing DataFrame
and the new cells’ values are filled with NaN
.
Example Codes:
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)
ignore_index=True
will ignore the index
of the new DataFrame
and assign them a new index in the original DataFrame
.
Output:
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