在Pandas中读取一个文件夹中的所有CSV文件需要借助os
和glob
模块。其中,os
模块提供了操作系统相关的功能(如获取文件路径、文件夹路径等),glob
模块提供了文件路径名匹配功能。
以下是读取流程:
- 导入必要的库:
import pandas as pd
import glob, os
- 定义CSV文件所在的文件夹路径:
folder_path = 'path/to/your/csv_folder'
- 获取文件夹中所有CSV文件的路径:
csv_files = glob.glob(os.path.join(folder_path, "*.csv"))
- 遍历CSV文件路径列表,将每个CSV文件读取为
DataFrame
并保存到字典中,字典的key为文件名(不含扩展名),value为DataFrame
对象:
csv_data = {}
for file_path in csv_files:
file_name = os.path.splitext(os.path.basename(file_path))[0]
csv_data[file_name] = pd.read_csv(file_path)
完整代码如下所示:
import pandas as pd
import glob, os
# 定义CSV文件所在的文件夹路径
folder_path = 'path/to/your/csv_folder'
# 获取文件夹中所有CSV文件的路径
csv_files = glob.glob(os.path.join(folder_path, "*.csv"))
# 遍历CSV文件路径列表,将每个CSV文件读取为DataFrame并保存到字典中
csv_data = {}
for file_path in csv_files:
file_name = os.path.splitext(os.path.basename(file_path))[0]
csv_data[file_name] = pd.read_csv(file_path)
以上是如何在Pandas中读取一个文件夹中的所有CSV文件。需要注意的是,这种方式存在风险:读取大量CSV文件时可能会耗尽内存或IO资源,因此需要谨慎使用。