How do I export specific columns from a Pandas DataFrame to a CSV file?

Using the pandas DataFrame.to_csv() function, you can export specific columns from a DataFrame to a CSV file by passing in a list of column names as the argument for the parameter ‘columns’. The data will be exported to the CSV file in the order of the column names specified in the list. This allows you to select only the columns that you need while exporting the file. The default delimiter in the CSV file is a comma (‘,’), but you can change it to another delimiter if necessary.


You can use the following syntax to export only specific columns from a pandas DataFrame to a CSV file:

df.to_csv('my_data.csv', columns=['col1', 'col4', 'col6'])

The columns argument tells pandas which specific columns to export from the DataFrame to the CSV file.

The following example shows how to use this syntax in practice.

Example: Export Specific Columns from Pandas DataFrame to CSV File

Suppose we have the following pandas DataFrame that contains information about various basketball players:

import pandas as pd

#create DataFrame
df = pd.DataFrame({'team': ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H'],
                   'points': [18, 22, 19, 14, 14, 11, 20, 28],
                   'assists': [5, 7, 7, 9, 12, 9, 9, 4],
                   'rebounds': [11, 8, 10, 6, 6, 5, 9, 12]})

#view DataFrame
print(df)

  team  points  assists  rebounds
0    A      18        5        11
1    B      22        7         8
2    C      19        7        10
3    D      14        9         6
4    E      14       12         6
5    F      11        9         5
6    G      20        9         9
7    H      28        4        12

If we use the to_csv() function to export the DataFrame to a CSV file, pandas will export all of the columns by default:

#export DataFrame to CSV file
df.to_csv('basketball_data.csv')

Here is what the CSV file looks like:

Notice that all of the columns from the DataFrame are included in the CSV file.

To export only specific columns from the DataFrame to a CSV file, we can use the columns argument.

For example, we can use the following syntax to export only the team and rebounds columns to the CSV file:

#export only team and rebounds columns from DataFrame to CSV file
df.to_csv('basketball_data.csv', columns=['team', 'rebounds'])

Here is what the CSV file looks like:

Note: You can find the complete documentation for the pandas to_csv() function .

How to Export Data to CSV File with No Header in Pandas
How to Merge Multiple CSV Files in Pandas

x