You can append a column in Pandas DataFrame with any of the following methods. I highly recommend you This book to learn Python. In this article, you will see 5 methods to append a column in Pandas DataFrame.
Method 1: df[‘Name’] = column
# Import the Pandas library as pd import pandas as pd # Initialize a dictionary dict = {'Names':['Harry', 'John', 'Hussain', 'Messi'], 'Marks':[95, 85, 77, 60]} # Convert the dictionary into DataFrame df = pd.DataFrame(dict) # Display the Original DataFrame print(df) # New Column grade = ['A','B','C','D'] # Add a column in DataFrame df['Grade'] = grade # Display the DataFrame print(df)
Output:
Names Marks 0 Harry 95 1 John 85 2 Hussain 77 3 Messi 60 Names Marks Grade 0 Harry 95 A 1 John 85 B 2 Hussain 77 C 3 Messi 60 D
Method 2: df.insert( )
# Import the Pandas library as pd import pandas as pd # Initialize a dictionary dict = {'Names':['Harry', 'John', 'Hussain', 'Messi'], 'Marks':[95, 85, 77, 60]} # Convert the dictionary into DataFrame df = pd.DataFrame(dict) # Display the Original DataFrame print(df) # Add a column in DataFrame (You can also change position of new column) df.insert(2, "Grade", ['A','B','C','D'], True) # Display the DataFrame print(df)
Output:
Names Marks 0 Harry 95 1 John 85 2 Hussain 77 3 Messi 60 Names Marks Grade 0 Harry 95 A 1 John 85 B 2 Hussain 77 C 3 Messi 60 D
Method 3: df.assign( )
# Import the Pandas library as pd import pandas as pd # Initialize a dictionary dict = {'Names':['Harry', 'John', 'Hussain', 'Messi'], 'Marks':[95, 85, 77, 60]} # Convert the dictionary into DataFrame df = pd.DataFrame(dict) # Display the Original DataFrame print(df) # Add a column in DataFrame df1 = df.assign(Grade = ['A','B','C','D']) # Display the DataFrame print(df1)
Output:
Names Marks 0 Harry 95 1 John 85 2 Hussain 77 3 Messi 60 Names Marks Grade 0 Harry 95 A 1 John 85 B 2 Hussain 77 C 3 Messi 60 D
Method 4: df.join( )
# Import the Pandas library as pd import pandas as pd # Initialize a dictionary dict = {'Names':['Harry', 'John', 'Hussain', 'Messi'], 'Marks':[95, 85, 77, 60]} # Convert the dictionary into DataFrame df = pd.DataFrame(dict) # Display the Original DataFrame print(df) # New Column column = pd.DataFrame({'Grade': ['A','B','C','D']}) # Add a column in DataFrame df1 = df.join(column) # Display the DataFrame print(df1)
Output:
Names Marks 0 Harry 95 1 John 85 2 Hussain 77 3 Messi 60 Names Marks Grade 0 Harry 95 A 1 John 85 B 2 Hussain 77 C 3 Messi 60 D
Method 5: pd.concat( )
# Import the Pandas library as pd import pandas as pd # Initialize a dictionary dict = {'Names':['Harry', 'John', 'Hussain', 'Messi'], 'Marks':[95, 85, 77, 60]} # Convert the dictionary into DataFrame df = pd.DataFrame(dict) # Display the Original DataFrame print(df) # New Column column = pd.DataFrame({'Grade': ['A','B','C','D']}) # Add a column in DataFrame df1 = pd.concat([df, column], axis=1) # Display the DataFrame print(df1)
Output:
Names Marks 0 Harry 95 1 John 85 2 Hussain 77 3 Messi 60 Names Marks Grade 0 Harry 95 A 1 John 85 B 2 Hussain 77 C 3 Messi 60 D