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

Pandas导出Excel遇ValueError:数据行数过多(1250619行)如何解决?

解决Pandas保存超大数据到Excel的ValueError问题

你的报错根源是:常规的.xlsx单个工作表最大支持1048576行,而你的统计结果有1250619行,超出了格式上限。以下是可行的解决办法:

方案1:拆分数据到多个工作表

把统计结果拆分到多个工作表,每个工作表不超过1048576行,写入同一个Excel文件:

import os
import pandas as pd

# 读取并合并CSV(修正原代码的路径与过滤问题)
csv_dir = 'path to csv files'
files_list = [f for f in os.listdir(csv_dir) if f.endswith('.csv')]
df_list = [pd.read_csv(os.path.join(csv_dir, f), sep=';') for f in files_list]
big_df = pd.concat(df_list)

# 分组统计(修正gropuby拼写错误为groupby)
x = big_df.groupby(['columnnames']).size().sort_values(ascending=False).reset_index(name='Count')

# 拆分数据并写入多工作表
max_rows_per_sheet = 1048576
total_sheets = (len(x) // max_rows_per_sheet) + 1

with pd.ExcelWriter('filename.xlsx', engine='xlsxwriter') as writer:
    for sheet_idx in range(total_sheets):
        start = sheet_idx * max_rows_per_sheet
        end = start + max_rows_per_sheet
        sheet_name = f'统计结果_{sheet_idx+1}'
        x.iloc[start:end].to_excel(writer, sheet_name=sheet_name, index=False)

方案2:保存为CSV格式(无行数限制)

如果不需要Excel格式,直接保存为CSV更简单,且没有行数上限:

x.to_csv('统计结果.csv', sep=';', index=False)

额外提示

原代码有两处拼写错误需要修正:

  • gropuby → groupby
  • pd.excelwriter → pd.ExcelWriter

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.21 20:22:10