python(pycharm)numpy.load“内存错误”

问题描述 投票:0回答:1

我正在使用python 3.5(64bit)我想加载并打印6.4GB的numpy文件。我的朋友给我发送了我想要的代码。她成功加载了数据,但是我看不到相同的结果。我成功安装了numpy 1.16.1。我将文件移至本地磁盘以修复此错误。但这没有用。

import numpy as np
data = np.load('C:/Users/papar/Desktop/processed_endomondoHR_proper_interpolate.npy')
print(data)


 Traceback (most recent call last):
  File "C:/Users/papar/PycharmProjects/untitled4/venv/plz.py", line 3, in <module>
    data = np.load('C:/Users/papar/Desktop/processed_endomondoHR_proper_interpolate.npy')
  File "C:\Users\papar\PycharmProjects\untitled4\venv\lib\site-packages\numpy\lib\npyio.py", line 440, in load
    pickle_kwargs=pickle_kwargs)
  File "C:\Users\papar\PycharmProjects\untitled4\venv\lib\site-packages\numpy\lib\format.py", line 693, in read_array
    array = pickle.load(fp, **pickle_kwargs)
MemoryError
python numpy memory pycharm load
1个回答
0
投票

内存错误表示您的阵列不适合内存。

如何处理取决于您的情况:

  • 验证阵列的数据类型,并尝试找到最适合您的阵列的数据类型。例如,如果您使用的是float64,请考虑float32甚至float16是否合适

  • 如果数据稀疏,则可以使用稀疏矩阵。搜索Scipy稀疏矩阵。但是请注意,为保持稀疏性,您可能会受限于微积分(例如,协方差的计算将导致非稀疏矩阵)

  • 考虑是否可以对数据的子集进行计算。这称为子采样。也许使用子采样就可以获得足够好的模型(对于像Kmean这样的聚类算法来说可能就是这种情况)。

© www.soinside.com 2019 - 2024. All rights reserved.