📜  在Python中将多个 CSV 文件读入单独的 DataFrames

📅  最后修改于: 2022-05-13 01:54:40.837000             🧑  作者: Mango

在Python中将多个 CSV 文件读入单独的 DataFrames

在本文中,我们将看到如何将多个 CSV 文件读取到单独的 DataFrame 中。为了仅读取一个数据帧,我们可以使用 pandas 的 pd.read_csv()函数。它以路径作为输入并返回数据帧,如

df = pd.read_csv("file path")

让我们来看看它是如何工作的

Python3
# import module
import pandas as pd
 
# read dataset
df = pd.read_csv("./csv/crime.csv")


Python3
# import module
import pandas as pd
 
# assign dataset names
list_of_names = ['crime','username']
 
# create empty list
dataframes_list = []
 
# append datasets into teh 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)


Python3
# import modules
import os
import pandase 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)




此处,crime.csv 是当前文件夹中的文件。 CSV 是包含crime.csv 文件的文件夹,CSV Reader.ipynb 是包含上述代码的文件。

输出:

它是从上述函数读取的数据帧。名为 – username.csv 的文件夹中还有一个文件。要读取它们并将它们存储在不同的数据框中,请使用以下代码



蟒蛇3

# import module
import pandas as pd
 
# assign dataset names
list_of_names = ['crime','username']
 
# create empty list
dataframes_list = []
 
# append datasets into teh 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 分别包含所有数据帧。

数据帧列表[0]:

数据帧列表[1]:

这是另一种方法,现在假设有很多文件,而我们不知道名称和编号,则使用以下代码

蟒蛇3

# import modules
import os
import pandase 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)

输出: