Tony Einstein 2022-11-13 01:23 采纳率: 45%
浏览 80
已结题

python使用pandas往xlsx文件写入数据报错:最大不能超过1048576行。如何解决这个问题呢?

** 1.问题遇到的现象和发生背景**
python在pycharm中使用pandas向.xlsx文件写入数据时报错:最大不能超过1048576行。
ValueError: This sheet is too large! Your sheet size is: 1149537, 7 Max shee.......

2. 运行结果及报错内容

writer_hour = pd.ExcelWriter("datafile.xlsx",engine='xlsxwriter')
similar_df_hour.to_excel(writer_hour, sheet_name="data", index=False, encoding="utf-8")

** 3.我尝试过的方法**
换用openpyxl引擎,engine='penpyxl',也不行。

4.我想要达到的结果
能够在xlsx文件的一个sheet中写入1149537 行数据,

5.可能的猜想
我了解了一个文件格式是.xlsb,但是我没用过这个文件格式,据说更快更小更好,但是我不知道他能否装下1149537行数据。

  • 写回答

3条回答 默认 最新

  • curating 2022-11-13 07:40
    关注

    Excel2003(xls)最大行列是65536行,256列。
    Excel2007(xlsx)以后版本最大行列是1048576行,16384列(xml格式)。
    你的程序没错,是excel格式自身的限制。
    可以考虑程序内设置比如1000000行,生成2个文件。
    另外,xlsb是去掉xml二进制压缩格式的xlsx,行数限制是一致的。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 11月21日
  • 已采纳回答 11月13日
  • 修改了问题 11月13日
  • 修改了问题 11月13日
  • 展开全部

悬赏问题

  • ¥15 在若依框架下实现人脸识别
  • ¥15 网络科学导论,网络控制
  • ¥100 安卓tv程序连接SQLSERVER2008问题
  • ¥15 利用Sentinel-2和Landsat8做一个水库的长时序NDVI的对比,为什么Snetinel-2计算的结果最小值特别小,而Lansat8就很平均
  • ¥15 metadata提取的PDF元数据,如何转换为一个Excel
  • ¥15 关于arduino编程toCharArray()函数的使用
  • ¥100 vc++混合CEF采用CLR方式编译报错
  • ¥15 coze 的插件输入飞书多维表格 app_token 后一直显示错误,如何解决?
  • ¥15 vite+vue3+plyr播放本地public文件夹下视频无法加载
  • ¥15 c#逐行读取txt文本,但是每一行里面数据之间空格数量不同