使用NP错误.savez和NP.load



我有一个列表data_list,我保存它如下:

    data_array = np.array(data_list)
    np.savez("File", data_array)

为了加载"File"

    a = np.load("File.npz") 
    b = a['arr_0']

我使用这段代码直到两周前,它工作得很好。今天我试着用我的程序工作,但它以

行中识别的内存错误结束。
   b = a['arr_0']

"File"大小为300mb。所以我不认为这是记忆的问题。

知道是怎么回事吗?

您要存储的数据是什么?使用形状/大小相似的np.randn会遇到同样的问题吗?

此外,知道您可以为使用np存储的数组分配名称可能很有用。通过将它们指定为kwargs来保存,即

np.savez("File", data_array=data_array)

则可以使用

a = np.load("File.npz") 
b = a['data_array']

还要注意(iirc) np。Savez压缩文件,所以问题可能是由于数组的大小,即使结果文件不是那么大。

最新更新