Jupyter 笔记本"IOPub data rate exceeded."中的 numpy 加载



我存储了一个大字典文件,格式为numpy pickle格式。我可以在较旧的 jupyter 笔记本应用程序中打开它。但是,在较新的版本中,当我运行此行时,我看到IOPub错误。

big_dict = np.load('a_large_dictionary.npy').all()

错误:

IOPub data rate exceeded.
The notebook server will temporarily stop sending output
to the client in order to avoid crashing it.
To change this limit, set the config variable
`--NotebookApp.iopub_data_rate_limit`.

后台似乎发生了一些我无法控制的事情。这很奇怪,因为我没有尝试在 NotebookApp 中加载/查看此文件的内容!

知道吗?如何在不编辑笔记本应用程序配置的情况下加载大文件?(同样,我不想将我刚刚从文件中读取的内容显示到变量中。

使用

jupyter notebook --NotebookApp.iopub_data_rate_limit=2147483647

启动笔记本时解决了我的问题。来源: https://github.com/JuliaLang/IJulia.jl/issues/528

问题是如果出现错误,numpy.load会打印内容。首先,尝试在终端或除 Notebook 以外的任何其他 python 环境中加载 pickle 文件以查找错误。在这种情况下,加载旧版本的腌制 numpy 需要编码参数。 此代码解决了问题:

big_dict = np.load('a_large_dictionary.npy', encoding='latin1').all()

最新更新