How to use pandas.DataFrame.insert() In Python Pandas

Add new column into DataFrame at specified location.

Syntax: DataFrame.insert(loc, column, value, allow_duplicates=False)

Parameters

loc : int Insertion index. Must verify 0 <= loc <= len(columns).

column : str, number, or hashable object Label of the inserted column.

value : int, Series, or array-like

allow_duplicates : bool, optional

Let’s understand with examples:

Python3




# importing pandas as pd
import pandas as pd
  
# creating the dataframe
df = pd.DataFrame({"Name": ['Anurag', 'Manjeet', 'Shubham',
                            'Saurabh', 'Ujjawal'],
                     
                   "Address": ['Patna', 'Delhi', 'Coimbatore'
                               'Greater noida', 'Patna'],
                     
                   "ID": [20123, 20124, 20145, 20146, 20147],
                     
                   "Sell": [140000, 300000, 600000, 200000, 600000]})
  
print("Original DataFrame :")
display(df)


Output:

Add a new column with default value:

Python3




df.insert(2, "expenditure", 4500, allow_duplicates=False)
df


Output:



Add Column to Pandas DataFrame with a Default Value

The three ways to add a column to Pandas DataFrame with Default Value.

  • Using pandas.DataFrame.assign(**kwargs)
  • Using [] operator
  • Using pandas.DataFrame.insert()

Similar Reads

Using Pandas.DataFrame.assign(**kwargs)

It Assigns new columns to a DataFrame and returns a new object with all existing columns to new ones. Existing columns that are re-assigned will be overwritten....

Using [] operator to add a new column

...

Using pandas.DataFrame.insert()

...