如何在Pandas中读取一个文件夹中的所有CSV文件

  • Post category:Python

在Pandas中读取一个文件夹中的所有CSV文件需要借助osglob模块。其中,os模块提供了操作系统相关的功能(如获取文件路径、文件夹路径等),glob模块提供了文件路径名匹配功能。

以下是读取流程:

  1. 导入必要的库:
import pandas as pd
import glob, os
  1. 定义CSV文件所在的文件夹路径:
folder_path = 'path/to/your/csv_folder'
  1. 获取文件夹中所有CSV文件的路径:
csv_files = glob.glob(os.path.join(folder_path, "*.csv"))
  1. 遍历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资源,因此需要谨慎使用。