Read multiple CSV files into separate DataFrames in Python
In this article, we will see how to read multiple CSV files into separate DataFrames. For reading only one data frame we can use pd.read_csv() function of pandas. It takes a path as input and returns data frame like
df = pd.read_csv("file path")
Let’s have a look at how it works
Python3
# import module import pandas as pd # read dataset df = pd.read_csv( "./csv/crime.csv" ) |
Here, crime.csv is the file in the current folder. CSV is the folder that contains the crime.csv file and CSV Reader.ipynb is the file containing the above code.
Output:
It is the data frame that is read from the above function. One more file is present in the folder named – username.csv. To read them both and store them in different data frames use the below code
Python3
# import module import pandas as pd # assign dataset names list_of_names = [ 'crime' , 'username' ] # create empty list dataframes_list = [] # append datasets into the list for i in range ( len (list_of_names)): temp_df = pd.read_csv( "./csv/" + list_of_names[i] + ".csv" ) dataframes_list.append(temp_df) |
dataframes_list contains all the data frames separately.
dataframes_list[0]:
dataframes_list[1]:
Here is another approach, now suppose that there are many files, and we don’t know the names and number then, use the below code
Python3
# import modules import os import pandas as pd # assign path path, dirs, files = next (os.walk( "./csv/" )) file_count = len (files) # create empty list dataframes_list = [] # append datasets to the list for i in range (file_count): temp_df = pd.read_csv( "./csv/" + files[i]) dataframes_list.append(temp_df) # display datasets for dataset in dataframes_list: display(dataset) |
Output:
Please Login to comment...