You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用Pandas批量读取多个.csv.gz文件并实现追加操作

用Pandas批量读取并追加csv.gz文件

当然可以实现。因为所有文件结构完全一致,我们可以通过Pandas结合Python的文件遍历工具,轻松批量读取这些csv.gz文件并纵向追加(拼接)成一个完整的DataFrame。

具体实现步骤:

  1. 导入所需依赖库
import pandas as pd
import glob
import os
  1. 获取目标目录下所有csv.gz文件的完整路径
# 匹配myDir目录下所有.csv.gz格式的文件
file_paths = glob.glob(os.path.join("myDir", "*.csv.gz"))
  1. 批量读取并拼接文件
    直接一次性读取所有文件后拼接(适合内存足够的场景):
# 逐个读取文件并存入DataFrame列表
df_list = [pd.read_csv(file, compression='gzip') for file in file_paths]
# 纵向拼接所有DataFrame,ignore_index重置索引
combined_df = pd.concat(df_list, ignore_index=True)

如果文件数量过多(如3000+),担心内存压力,可以分批次读取拼接:

combined_df = pd.DataFrame()
# 每批次处理100个文件,可根据内存情况调整
chunk_size = 100

for i in range(0, len(file_paths), chunk_size):
    # 截取当前批次的文件路径
    chunk_files = file_paths[i:i+chunk_size]
    # 读取当前批次的所有文件
    chunk_dfs = [pd.read_csv(file, compression='gzip') for file in chunk_files]
    # 拼接当前批次并合并到总DataFrame
    combined_df = pd.concat([combined_df, pd.concat(chunk_dfs, ignore_index=True)], ignore_index=True)

内容的提问来源于stack exchange,提问作者Giampaolo Levorato

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.18 05:07:04