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

如何使用Pandas处理格式混乱的Excel数据以用于分析?

Pandas处理混乱Excel的实操方案

通用处理流程(适配你的场景)

针对你提到的格式混乱、需删除空白上移的Excel,用Pandas可按以下步骤处理:

  • 全量读取原始数据:不提前跳过空行或指定表头,避免丢失有效信息
    import pandas as pd
    # header=None 保留所有原始行,不自动识别表头
    raw_df = pd.read_excel("你的原始数据.xlsx", header=None)
    
  • 清理纯空行:先删除所有列均为空的行,减少无效数据
    filtered_df = raw_df.dropna(how="all").reset_index(drop=True)
    
  • 规整字段填充:若存在分组类字段(如分类、部门)仅在每组开头出现、下方为空,用向下填充补全
    # 示例:假设第1列是分组字段,根据实际列索引调整
    filtered_df[1] = filtered_df[1].ffill()
    
  • 匹配目标格式:对照你提供的目标规整格式,重命名列、调整列顺序
    # 替换为你的目标列名列表
    filtered_df.columns = ["序号", "分类", "姓名", "数据值"]
    # 调整列顺序至目标格式
    target_cols = ["序号", "姓名", "分类", "数据值"]
    final_df = filtered_df[target_cols]
    
  • 导出结果
    final_df.to_excel("规整后数据.xlsx", index=False)
    

针对48000+行的性能优化

  • 分块读取:若文件过大导致内存不足,采用分块方式处理
    chunk_list = []
    # 每次读取10000行,可根据内存情况调整
    for chunk in pd.read_excel("你的原始数据.xlsx", header=None, chunksize=10000):
        processed_chunk = chunk.dropna(how="all")
        # 加入字段填充、格式调整逻辑
        processed_chunk[1] = processed_chunk[1].ffill()
        chunk_list.append(processed_chunk)
    final_df = pd.concat(chunk_list).reset_index(drop=True)
    
  • 精准验证:处理后抽取部分数据和你手动整理的样本对比,用final_df.sample(10)查看随机行,确保数据逻辑正确

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.20 15:36:28