簡體   English   中英

讀取工作表名為None的xlsx文件。 熊貓xlrd

[英]read xlsx file with sheet named as None. pandas xlrd

我有一堆xlsx文件,它們的工作表名為None (空字符串)
當我嘗試使用pandas讀取文件時, xlrd引發list index out of range錯誤。

Traceback (most recent call last):
  File "/usr/local/bin/runxlrd.py", line 332, in main
    ragged_rows=options.ragged_rows,
  File "/Library/Python/2.7/site-packages/xlrd/__init__.py", line 416, in open_workbook
    ragged_rows=ragged_rows,
  File "/Library/Python/2.7/site-packages/xlrd/xlsx.py", line 791, in open_workbook_2007_xml
    x12sheet.process_stream(zflo, heading)
  File "/Library/Python/2.7/site-packages/xlrd/xlsx.py", line 528, in own_process_stream
    self_do_row(elem)
  File "/Library/Python/2.7/site-packages/xlrd/xlsx.py", line 667, in do_row
    value = self.sst[int(tvalue)]
IndexError: list index out of range

我發現這個發行xrld github上,我認為是相關的。
如果我更改工作表的名稱, pandas成功讀取文件。

我不能以共享文件為例(隱私問題),當我嘗試創建一個以工作表名稱為None的演示文件時,Excel引發了無效的名稱錯誤。

軟件包版本。

pkg_resources.get_distribution("xlrd").version
Out[3]: '1.1.0'
pd.__version__
Out[4]: '0.23.0' 

有沒有辦法使用大熊貓或可以更改工作表名稱的腳本(任何語言)讀取此文件?

這適用於我使用Python 2.7,pandas 0.23.3和xlrd 1.1.0的情況

工作表名為無的Excel文件

>>> import xlrd
>>> import pandas
>>> xlrd_workbook = xlrd.open_workbook("test.xlsx")
>>> pandas.read_excel(xlrd_workbook, engine='xlrd')
     A    B    C
0  123  456  789

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM