首页 > 解决方案 > 将大型 sas 文件读入块

问题描述

迭代块时遇到错误,

compustat = pd.read_sas("F:\\COMPUSTAT_annually.sas7bdat",
                    encoding='ISO-8859-1',
                    chunksize=1500)

dfs = []
i = 0
for chunk in compustat:
    dfs.append(chunk)

    
    i += 1
    print(i)

当 i == 262 时,它说:

-------------------------------------------------- ------------------------- ValueError Traceback(最近一次调用最后一次) D:\Anaconda\lib\site-packages\pandas\io\sas\ sas7bdat.py in _read_next_page(self) 738 f"{len(self._cached_pa​​ge):d} of {self._page_length:d} bytes)" 739) --> 740 raise ValueError(msg) 741 742 self._read_page_header()

ValueError:无法从文件中读取完整页面(读取 65536 个字节,共 131072 个字节) 异常被忽略:'pandas.io.sas._sas.Parser.read_next_page' Traceback(最近一次调用):文件“D:\Anaconda\lib\ site-packages\pandas\io\sas\sas7bdat.py",第 740 行,在 _read_next_page 中引发 ValueError(msg) ValueError:无法从文件中读取完整页面(读取 65536 个字节,共 131072 个字节)

我搜索但没有看到这个问题的答案......不确定它是否与 sas 阅读有关。

标签: python-3.xjupyter-notebooksaschunks

解决方案


推荐阅读