In this Python Pandas tutorial, I will cover the topic of how to drop the unnamed column in Pandas dataframe in Python in detail with some examples.
But knowing Why to drop the Unnamed columns of a Pandas DataFrame will help you have a strong base in Pandas. We will also know when this unnamed column is getting attached to DataFrame in Python.
Let us get answers to all these questions of Why, When, and How about unnamed columns in the Pandas dataframe through this Python tutorial.
Moreover, We will also cover the following topics:
- What is the Unnamed column in Pandas DataFrame?
- Methods to remove the Unnamed column from a Pandas DataFrame
- Remove the Unnamed column while exporting DataFrame to the CSV file
- Remove the Unnamed column after exporting it to the CSV file
- Remove the Unnamed column after exporting it to the CSV file using the drop() method in Python
- Why drop the Unnamed columns of the Pandas DataFrame in Python?
- When to drop the Unnamed columns of the Pandas DataFrame in Python?
What is the Unnamed column in Pandas DataFrame in Python
When we create a Pandas DataFrame and export it to a CSV file in Python, an extra column is added to the existing DataFrame, increasing the complexity. That extra column, useless for further analysis, is the unnamed column in Python Pandas.
To dive into this, Let us create a Pandas DataFrame first.
- In the below code, I have created a Python Pandas dataframe.
- Export the dataframe to a CSV file by calling the to_csv function in Python.
- Then, try to read the CSV file through the pd.read_csv() function.
#Import the necessary libraries
import pandas as pd
#Create Pandas DataFrame
data_dict={'Name':['Nick','Stephen','David','Jonas','Giga','Justin','James','Robert'],
'Location': ['USA','UK','Australia','USA','USA','Australia','UK','USA'],
'Age':[24,34,42,18,27,52,21,35]}
Data=pd.DataFrame(data_dict)
#Export the DataFrame to csv file
Data.to_csv('Travellers')
#Print the Pandas DataFrame that is exported
Travellers_data=pd.read_csv('Travellers')
print(Travellers_data)
Output:
Unnamed: 0 Name Location Age
0 0 Nick USA 24
1 1 Stephen UK 34
2 2 David Australia 42
3 3 Jonas USA 18
4 4 Giga USA 27
5 5 Justin Australia 52
6 6 James UK 21
7 7 Robert USA 35
In the below output image, you can observe that along with the input data we have given in the Pandas DataFrame, an extra column that is of no use is also added, i.e., the ‘Unnamed :0′ column.
Here, we have created a Pandas DataFrame to remove Unnamed columns from Pandas DataFrame in Python.
Remove the Unnamed column of a Pandas DataFrame
There are many methods to remove the Unnamed column of a Pandas DataFrame.Here is the list of methods:
1. Drop Unnamed column in Pandas DataFrame while exporting DataFrame to the CSV file
- The no-name column in the Pandas dataframe in Python is automatically created when the file is exported and appears with the name Unnamed: 0.
- To avoid the creation of no name or Unnamed: 0 columns in the dataframe in Python, We have to set the False value to the Index parameter while exporting the DataFrame to CSV in Python.
- This is how the inbuilt function looks like DataFrame.to_csv(‘exported_file.csv’, index=False’).
Let’s see this also in an instance:
#Import the necessary libraries
import pandas as pd
#Create Pandas DataFrame
data_dict={'Name':['Nick','Stephen','David','Jonas','Giga','Justin','James','Robert'],
'Location': ['USA','UK','Australia','USA','USA','Australia','UK','USA'],
'Age':[24,34,42,18,27,52,21,35]}
Data=pd.DataFrame(data_dict)
#Export the DataFrame to csv file
Data.to_csv('Travellers',index=False)
#Print the Pandas DataFrame that is exported
Travellers_data=pd.read_csv('Travellers')
print(Travellers_data)
Output:
Name Location Age
0 Nick USA 24
1 Stephen UK 34
2 David Australia 42
3 Jonas USA 18
4 Giga USA 27
5 Justin Australia 52
6 James UK 21
7 Robert USA 35
The output image below shows that no Unnamed Column is added to the Pandas DataFrame while exporting it to a CSV file since we have set index=False while exporting it to CSV.
This is how we can drop unnamed column in Pandas dataframe while exporting the Pandas DataFrame to the CSV file in Python.
2. Drop unnamed column Pandas after exporting it to the CSV file
When we have created a Pandas DataFrame in Python and exported it to a CSV file, and when we try to read the exported CSV file, an Unnamed column gets added to the existing DataFrame.
- The code “Travellers_data.columns.str.contains(‘^Unnamed’)” will fetch the columns whose column name is ‘Unnamed’ in the Pandas DataFrame in Python.
- The code ”Travellers_data.loc[:, ~Travellers_data.columns.str.contains(‘^Unnamed’)]” will remove the ‘Unnamed column from the existing Pandas DataFrame and fetch all the rest of the data in Python.
#Import the necessary libraries
import numpy as np
import pandas as pd
#Create Pandas DataFrame
data_dict={'Name':['Nick','Stephen','David','Jonas','Giga','Justin','James','Robert'],
'Location': ['USA','UK','Australia','USA','USA','Australia','UK','USA'],
'Age':[24,34,42,18,27,52,21,35]}
Data=pd.DataFrame(data_dict)
#Export the DataFrame to csv file
Data.to_csv('Travellers')
#Print the Pandas DataFrame that is exported
Travellers_data=pd.read_csv('Travellers')
#drop the column that contains "Unnamed" in column name
Travellers_data = Travellers_data.loc[:, ~Travellers_data.columns.str.contains('^Unnamed')]
# DataFrame after dropping the Unnamed column
print(Travellers_data)
Output:
Name Location Age
0 Nick USA 24
1 Stephen UK 34
2 David Australia 42
3 Jonas USA 18
4 Giga USA 27
5 Justin Australia 52
6 James UK 21
7 Robert USA 35
In the below output image, we can observe that no Unnamed Column is present in the Pandas DataFrame because we have written (~Travellers_data.columns.str.contains(‘^Unnamed’)) in the code to drop unnamed column Pandas in Python.
This is how we can drop the unnamed column in Pandas dataframe in Python after exporting it to the CSV file.
3. Remove unnamed columns Pandas after exporting it to the CSV file using the drop() method
- In the below code, we have created a Pandas DataFrame and exported it to a CSV file, and when we try to read the exported CSV file, an unnamed column gets added to the existing DataFrame.
- The code “Travellers_data.drop(“Unnamed: 0″, axis=1)” will drop the columns whose name is ‘Unnamed’ in the Pandas DataFrame “Travellers_data” in Python.
#Import the necessary libraries
import pandas as pd
#Create Pandas DataFrame
data_dict={'Name':['Nick','Stephen','David','Jonas','Giga','Justin','James','Robert'],
'Location': ['USA','UK','Australia','USA','USA','Australia','UK','USA'],
'Age':[24,34,42,18,27,52,21,35]}
Data=pd.DataFrame(data_dict)
#Export the DataFrame to csv file
Data.to_csv('Travellers')
#Print the Pandas DataFrame that is exported
Travellers_data=pd.read_csv('Travellers')
#drop the column that contains "Unnamed" in column name
Travellers_data = Travellers_data.drop("Unnamed: 0", axis=1)
# DataFrame after dropping the Unnamed column
print(Travellers_data)
Output:
Name Location Age
0 Nick USA 24
1 Stephen UK 34
2 David Australia 42
3 Jonas USA 18
4 Giga USA 27
5 Justin Australia 52
6 James UK 21
7 Robert USA 35
In the below output image, we can observe that no Unnamed Column is present in the Pandas DataFrame ‘Travellers_data‘ because we have dropped it using the drop() method in Python.
This is how we can remove the Unnamed column from Pandas DataFrame after exporting it to the CSV file using the drop() method in Python.
Why to delete unnamed column Pandas in Python
The Unnamed column will attach to the existing Pandas DataFrame while exporting the DataFrame to CSV.
- The ‘Unnamed’ column that is getting appended to the Pandas DataFrame is of no use.
- And it simply increases the computation and dimension of the dataset.
- Memory is unnecessarily getting wasted because of the unwanted column that is getting added.
- Removing or dropping this Unnamed column helps in analyzing the dataset further in a proper way.
When to drop the Unnamed columns of the Pandas DataFrame in Python
The ‘Unnamed’ column is being appended to the existing Pandas DataFrame while exporting to a CSV file.
- We can drop the ‘Unnamed’ column of the DataFrame while exporting it to CSV, i.e., by passing the False value to the Index Parameter in Python.
- We can even drop the ‘Unnamed’ column of the Pandas DataFrame after exporting it to CSV using method2 or method3 [drop() function].
Conclusion
In this Python Pandas tutorial, we have covered all the different methods to drop or remove the ‘Unnamed’ columns of the existing Pandas DataFrame in Python with three different scenarios. I have also explained topics like what is unnamed columns in Pandas and why to remove unnamed columns in Pandas.
Hopefully, You understand the methods to delete unnamed columns in pandas
We can also go through the following Python Pandas tutorials to better understand Pandas in Python.
- How to drop header row of Pandas DataFrame
- How to get Index values of Pandas DataFrames
- Drop non-numeric columns from pandas DataFrame
I am Bijay Kumar, a Microsoft MVP in SharePoint. Apart from SharePoint, I started working on Python, Machine learning, and artificial intelligence for the last 5 years. During this time I got expertise in various Python libraries also like Tkinter, Pandas, NumPy, Turtle, Django, Matplotlib, Tensorflow, Scipy, Scikit-Learn, etc… for various clients in the United States, Canada, the United Kingdom, Australia, New Zealand, etc. Check out my profile.