2017-07-27 91 views
0

在版本0.16.1中,chunksize參數可用。read_excel的chunksize關鍵字未實現

參見:http://pandas.pydata.org/pandas-docs/version/0.16.1/generated/pandas.ExcelFile.parse.html

但是在最新的版本是不可用的。

https://pandas.pydata.org/pandas-docs/stable/generated/pandas.ExcelFile.parse.html

是什麼,它被移除的原因?

另外,我應該如何處理最新版本的塊大小的excel文件?

我用下面的事情:

import pandas as pd 

excel = pd.ExcelFile("test.xlsx") 

for sheet in excel.sheet_names: 
    reader = excel.parse(sheet, chunksize=1000) 
    for chunk in reader: 
     # process chunk 
+1

它在['0.17.0'](http://pandas.pydata.org/pandas-docs/stable/whatsnew.html#whatsnew-0170-api-breaking-other)中是不受支持和刪除的,所以它'現在會引發一個不受支持的錯誤。請參閱https://github.com/pandas-dev/pandas/pull/11198和https://github.com/pandas-dev/pandas/issues/8011。由於它使用'xlrd',這看起來像是將整個工作表加載到內存中,到目前爲止'chunksize'還沒有被加回 – EdChum

回答

1

由於EdChum在註釋中說明,在0.17.0或更新版本中取消了這一功能。 Chris在評論中給出了相同的原因:

有沒有超級引人注目的理由;主要思想是匹配to_excel的 api,即「ExcelFileWrapper」(ExcelFile,ExcelWriter) 沒有任何特定於熊貓的功能,而是將 傳遞給io函數(read_excel,to_excel)。

我確實更新了文檔以涵蓋該特定示例。編輯:雖然 它可能很難在差異中看到 - 在下面呈現。

來源:https://github.com/pandas-dev/pandas/pull/11198

我仍然不知道是否有以塊的形式來讀取Excel任何替代方法?