将 xls 转换为带有多余标题的 xlsx

发布于 2025-01-16 20:34:35 字数 1019 浏览 0 评论 0原文

初级开发人员在这里。

目标: 使用 python,将文件类型从 xls 转换为包含干净标头的 xlsx。

所需标头: 在此处输入图像描述

我的尝试:

我的第一次尝试是使用 win32com。但是,这不起作用,因为我在 pip 安装时收到以下两个错误。我相信这是因为我使用的是 Mac。

错误:找不到满足 win32com 要求的版本(来自版本:无)

错误:找不到 win32com 的匹配发行版

然后我按照此操作 不使用 win32com 的帖子,但是,产生了这个 错误。

xlrd.biffh.XLRDError:格式不受支持,或文件损坏:需要 BOF 记录; find b'

我遇到的另一个问题是我的文件本身。顶部有 6 行多余的线需要删除。此外,我的实际数据表的标题混合了合并和未合并的单元格。我不确定如何解决这个问题。

任何建议都会有帮助,并提前感谢您!

输入图片此处描述

junior dev here.

Goal: Using python, convert file type from xls to xlsx that contains a clean header.

Desired header: enter image description here

My attempt:

My first attempt was to use win32com. However, that didn't work because I received the following two errors when pip installing. I believe it's because I'm on a Mac.

ERROR: Could not find a version that satisfies the requirement win32com (from versions: none)

ERROR: No matching distribution found for win32com

I then followed this post that doesn't use win32com, however, that produced this error.

xlrd.biffh.XLRDError: Unsupported format, or corrupt file: Expected BOF record; found b'<?xml ve'

The other issue I'm running into is my file itself. At the top, there are 6 extra lines that need to be removed. In addition, my headers of the actual data table have a mix of merged and unmerged cells. I'm not certain how to go about fixing that.

Any suggestions would be helpful and thank you in advance!

enter image description here

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

痴者 2025-01-23 20:34:35

回答我问题的第二部分。仍然不确定如何接收 xls 文件。

如果我将文件转换为 CSV 文件,则使用此命令删除前几行。 Skiprows 是在 df 初始化期间剪切 csv 或 xlsx 文件顶部部分的方法。

df = pd.read_csv('file_name.csv', skiprows = 8)

Answering the second part of my question. Still not certain on how to take in xls files.

If I convert the file to a CSV file, then use this command to remove the top few lines. skiprows is the method to use that cuts out the top section of a csv or xlsx file during the df's intialization.

df = pd.read_csv('file_name.csv', skiprows = 8)
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文