想使用Python包Pandas处理一些xls文件,运行时出现类似下面错误:
xlrd.compdoc.CompDocError: Workbook corruption: seen[2] == 4
而使用的xlrd 版本是2.0.1
查找的很多内容,是通过修改xlrd的源代码来处理这种情况的.因不想这样解决,所以寻找有没有其它处理方式.
检查了被处理的xls文件,发现它们是通过PHPExcel生成的导出文件;如果用WPS等软件打开并保存后,
再用处理程序处理,并不会出现上述报错.因此这种情况和文件生成过程是有关系的.
经过一些资料查找后,在[此处]找到了如下回答:
From pkm comment (link) the problem is with a Compound File Binary
#pip install OleFileIO-PL import OleFileIO_PL import pandas as pd path = 'file.xls' with open(path,'rb') as file: ole = OleFileIO_PL.OleFileIO(file) if ole.exists('Workbook'): d = ole.openstream('Workbook') x=pd.read_excel(d,engine='xlrd') print(x.head())
经过测试,安装了OleFileIO-PL 0.31后,采用上述样例代码,可解决遇到的异常.同时也指出了产生异常现象的来源.
同时,在其它的回答中,如下的处理方式,经测试也是可以作为处理方案的:
Inspired by this answer, but a bit more straigthforward:
pd.read_excel accepts xlrd.Book objects so you could do:
workbook = xlrd.open_workbook('file_name.xls', ignore_workbook_corruption=True) excel = pd.read_excel(workbook)
相关推荐
今天小编就为大家分享一篇pandas 读取各种格式文件的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
Python 简单使用 pandas 读取excel 的 csv文件处理,支持utf-8和gbk编码自动识别。
今天小编就为大家分享一篇使用pandas模块读取csv文件和excel表格,并用matplotlib画图的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
请先解压zip,然后再读取xml文件。代码链接在https://blog.csdn.net/herosunly/article/details/112266117。
今天小编就为大家分享一篇利用Pandas读取文件路径或文件名称包含中文的csv文件方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
pandas读取HDF5文件
python处理pandas读取文件名有中文报错问题解决方法,
需要注意的是,read_csv()函数是通用的读取CSV文件的函数,可以读取以制表符或其他指定字符分隔的txt文件,只需要指定相应的分隔符即可。此外,也可以通过header参数指定是否有列名,以及通过names参数指定列名。 ...
pandas读取xlsx文件
pandas读取excel文件,利用pandas读取Excel数据,然后利用Pycharts进行可视化展示,分析不同站点不同时间的aqi历史数据,并进行差值运算,分析差值的趋势
2022/3/6 4.3 pandas读写文件 In [ ]: # 引入相关模块 import numpy as np # pandas和numpy 常常结合在一起使用,导入numpy库 import pandas as pd # 导入pandas库 print (pd.__version__) # 打印pandas版本信息 ...
记录pandas读取文件注意点的测试数据文件
下面小编就为大家分享一篇使用pandas读取csv文件的指定列方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
pandas文件读取和存储
最新国家1级2级鸟类保护名录
Python 数据操作教程,使用 PANDAS 读取 CSV 文件的 15 种方法
pandas可以将读取到的表格型数据(文件不一定要是表格)转成DataFrame类型的数据结构,然后我们可以通过操作DataFrame进行数据分析,数据预处理以及行和列的操作等。下面介绍一些常用读取文件的方法 1、read_csv函数...
02. Pandas读取数据.ipynb
pandas