Merge Multiple CSV Files with Python

by:

Data AnalysisPython

This tutorial teaches how to merge multiple CSV files into an Excel file using Python. This is a very tedious task when done manually, so hopefully, this tutorial is useful for you.

1. Why would I want to merge excel files?

There are several reasons why you may want to merge Excel files:

  1. Combining Data: You may have multiple Excel files that contain related data and you want to combine them into a single file for analysis or reporting purposes. For example, you may have separate Excel files for sales data for different regions, and you want to combine them into a single file for a company-wide sales report.
  2. Simplifying Workflow: Merging Excel files can simplify your workflow by reducing the number of files you need to manage. Instead of having to work with multiple files, you can work with a single, consolidated file.
  3. Standardizing Data: Merging Excel files can help you standardize data from different sources into a common format. This can make it easier to analyze and compare data from different sources.
  4. Saving Time: Merging Excel files can save you time by eliminating the need to manually copy and paste data from multiple files into a single file.

Overall, merging Excel files can help you to more efficiently manage and analyze data, which can lead to better decision-making and improved productivity.

2. Merge multiple CSV files with Python

The code below merges multiple CSV files into an Excel file (xlsx format) with multiple sheets – one sheet per CSV. Line 4 defined the list of files that will be merged and Line 6 the names of the sheets associated with the files defined in Line 4.

The code below assumes that you already have pandas installed which can be done with PIP.

import pandas as pd

# create here a list of files you want to merge into the an Excel file
files = [# FILES TO MERGE]

sheet_names = [# SHEET NAMES]]


writer = pd.ExcelWriter('merged_file.xlsx', engine='xlsxwriter')

for i, file in enumerate(files):
    df = pd.read_csv(file, sep=",")
    
    df.to_excel(writer, sheet_name=str(sheet_names[i]))

writer.save()


3. Merge multiple TSV files with Python

If you want to merge multiple TSV files into one Excel file using Python, all you need to do is to use the code above and change line 12 from sep=”,” to sep=”\t”.

4. Conclusions

In conclusion, this tutorial has provided a simple and efficient method for merging multiple CSV files into an Excel file using Python. By introducing the pandas library and its various functions, users can easily concatenate multiple CSV files and export them as a single Excel file. This process saves time and reduces the risk of errors when compared to manually merging multiple files. The tutorial also provides a step-by-step guide with code examples that are easy to follow, even for beginners. By using this tutorial, users can improve their data processing workflow and increase their productivity. This knowledge is especially useful for researchers, data analysts, and business professionals who deal with large amounts of data on a regular basis. Overall, this tutorial is a valuable resource for anyone looking to learn how to merge multiple CSV files into an Excel file using Python.

More Resources