wkz*_*zhu 5 excel vba xlrd pandas openpyxl
我有大量 Excel 文件,每个文件都有一列,其中数字格式为文本。Excel 给出错误“此单元格中的数字格式为文本或前面带有撇号” - 请参阅第三列,其中单元格有一个绿色三角形。
我的目标是在 Pandas 中打开所有这些文件,而不必手动打开每个文件并将列转换为数字。但是,pd.read_excel() 失败并出现以下xlrd
错误:
XLRDError: ZIP file contents not a known type of workbook
Run Code Online (Sandbox Code Playgroud)
毫不奇怪,当我xlrd
直接使用时:wb = xlrd.open_workbook(filename)
我得到同样的错误。
我还尝试了 openpyxl: wb = openpyxl.load_workbook(filename)
,它给了我这个:
KeyError: "There is no item named 'xl/_rels/workbook.xml.rels' in the archive"
Run Code Online (Sandbox Code Playgroud)
我确认,如果我手动将列转换为 Excel 中的数字并重新保存工作簿,则 pandas (xlrd) 和 openpyxl 都可以打开该文件。
有人有什么想法吗?
阅读 Excel 时使用“转换器”。
文档。
例如。:
df = pd.read_excel('yourfile.xlsx',sheetname='sheetname',header=0,converters={ "% Chg" : str })
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
5141 次 |
最近记录: |