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

如何循环遍历股票代码列表批量实现pandas数据清洗导出

股票数据批量处理实现方案

核心逻辑是将单文件处理流程封装为可复用单元,通过维护股票代码列表循环执行处理,完全消除重复代码。

实现步骤

  • 保留原有的日期格式清洗函数,无需修改
  • 封装单支股票的「文件读取-数据清洗-结果导出」全流程,通过参数传入股票代码、文件存储路径,自动拼接对应文件的访问地址
  • 定义待处理的股票代码列表,循环调用单支处理函数即可完成批量操作,额外增加异常捕获避免单文件出错中断整个任务

完整实现代码

import pandas as pd
import os

# 原有日期转datetime索引的清洗逻辑,保持不变
def clean_func(f1):
    f1['Date'] = pd.to_datetime(f1['Date']) 
    f1.index = f1['Date']
    return f1

def process_single_tkr(tkr: str, file_root: str):
    # 自动拼接当前股票的文件路径,适配不同操作系统的路径格式
    current_file_path = os.path.join(file_root, f"{tkr}.csv")
    # 读取原始数据
    df = pd.read_csv(current_file_path)
    # 执行数据清洗
    df_clean = clean_func(df)
    # 导出处理后的数据,如需保留原文件可将输出文件名改为f"{tkr}_cleaned.csv"
    df_clean.to_csv(current_file_path, index=True)
    print(f"[{tkr}] 数据处理完成")

if __name__ == "__main__":
    # 替换为你需要处理的所有股票代码
    tkr_list = ["AAPL", "MSFT", "TSLA", "000001", "600519"]
    # 替换为你的股票csv文件存放的根目录
    data_path = r"C:\\path"

    # 循环遍历批量处理
    for tkr in tkr_list:
        try:
            process_single_tkr(tkr, data_path)
        except Exception as e:
            print(f"[{tkr}] 处理失败,错误原因:{str(e)}")

补充说明

  • 使用os.path.join拼接路径可以自动适配Windows、macOS、Linux不同系统的路径斜杠规则,避免手动写路径出现的转义、格式错误
  • 异常捕获逻辑可以保证某支股票的文件缺失、字段格式错误时,不会终止整个批量任务,只会打印对应错误信息后继续处理剩余股票
  • to_csv时指定index=True是为了确保设置的Date时间索引能被正确写入导出文件,避免索引丢失

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.27 23:06:22