【问题标题】:python(pycharm) numpy.load "Memory error"python(pycharm)numpy.load“内存错误”
【发布时间】:2020-09-06 23:23:20
【问题描述】:

我正在使用 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】:

    内存错误意味着您的数组不适合内存。

    你如何处理这取决于你的情况:

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

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

    • 考虑是否可以在数据子集上完成计算。这称为二次抽样。也许使用二次抽样你会得到一个足够好的模型(这可能是像 Kmean 这样的聚类算法的情况)。

    【讨论】:

    • 1.我不知道数据类型..,我从 github 下载了 numpy 文件,当我将鼠标光标放在文件名上时,范围和类型是非项目文件和未知数。当我看到我朋友的结果时,它看起来只是整数......我试图在另一个代码中加载文件,但它返回完全相同的错误。现在我认为这可能是位置问题,因为 dll 文件的图像有一个问号。 (我用pycharm)
    猜你喜欢
    • 2016-10-20
    • 2020-02-05
    • 2017-03-21
    • 1970-01-01
    • 1970-01-01
    • 2013-12-04
    • 2012-10-31
    • 2011-05-18
    • 1970-01-01
    相关资源
    最近更新 更多