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

如何将Pandas单文件列拆分程序改为批量处理文件夹内CSV文件

批量处理文件夹内CSV文件的文本分列方案

先修正原代码中的潜在错误,再重构为批量处理逻辑:

核心调整点

  • 把单文件处理逻辑封装成可复用的函数
  • 遍历目标文件夹下所有.csv格式文件
  • 修复原代码中列名不匹配的问题(原代码先设置列名为Last Name/First Name,后续却访问Name列,会触发KeyError)
  • 支持自定义输入、输出文件夹路径

完整代码

import pandas as pd
import os

def process_single_csv(filepath, output_dir, encoding='cp1252'):
    # 读取CSV文件:若原CSV自带表头,删除header=None;若无表头,需确保列对应关系正确
    data = pd.read_csv(filepath, header=None, encoding=encoding)
    # 假设原CSV无表头,两列依次为Name和SName
    data.columns = ['Name', 'SName']
    
    # 拆分Name列为姓氏和名字,去除前后空格
    name_split = data["Name"].str.split(",", n=1, expand=True)
    data["Last Name"] = name_split[0].str.strip()
    data["First Name"] = name_split[1].str.strip()
    
    # 拆分SName列为对应姓氏和名字
    sname_split = data["SName"].str.split(",", n=1, expand=True)
    data["S Last Name"] = sname_split[0].str.strip()
    data["S First Name"] = sname_split[1].str.strip()
    
    # 生成输出路径,替换后缀为xlsx
    base_name = os.path.splitext(os.path.basename(filepath))[0]
    output_path = os.path.join(output_dir, f"{base_name}.xlsx")
    
    # 保存处理后的文件
    data.to_excel(output_path, index=False)
    print(f"已完成:{output_path}")

def batch_process_csv_folder(input_folder, output_folder, encoding='cp1252'):
    # 自动创建输出文件夹(不存在则新建)
    os.makedirs(output_folder, exist_ok=True)
    
    # 遍历文件夹内所有CSV文件(忽略大小写)
    for filename in os.listdir(input_folder):
        if filename.lower().endswith('.csv'):
            full_path = os.path.join(input_folder, filename)
            process_single_csv(full_path, output_folder, encoding)

# 配置你的文件夹路径
INPUT_FOLDER = "C:/Users/username/folder1/folder2/folder3"  # 存放CSV的文件夹
OUTPUT_FOLDER = "C:/Users/username/folder1/folder2/output"    # 保存Excel的文件夹

# 启动批量处理
batch_process_csv_folder(INPUT_FOLDER, OUTPUT_FOLDER)

关键说明

  • 若你的CSV文件自带表头,直接删除data.columns = ['Name', 'SName']这一行即可
  • 添加str.strip()是为了清除逗号前后的空格,避免拆分后的姓名带多余空白
  • 遍历逻辑会忽略非CSV文件,同时兼容.CSV大写后缀的文件

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.03 09:15:34