我想将大数组保存到文件。我用pickle.dump(array, file, pickle.HIGHEST_PROTOCOL)
。它适用于小阵列,但当我尝试保存非常大的阵列(例如1GB或更多)时,它会使用整个内存,并且我的电脑会冻结。Python3.6 - 将大数组保存到文件
有没有办法如何保存那个大阵列?
阵列例如:
[[array([1,2,3,298,299,300], dtype=float32),array([1,2,3,298,299,300], dtype=float32),array([1,2,3,298,299,300], dtype=float32)],
[array([1,2,3,298,299,300], dtype=float32),array([1,2,3,298,299,300], dtype=float32),array([1,2,3,298,299,300], dtype=float32)],
[array([1,2,3,298,299,300], dtype=float32),array([1,2,3,298,299,300], dtype=float32),array([1,2,3,298,299,300], dtype=float32)]]
也许保存一个数组可能会以二进制格式完成,即使这是一个更大的努力。你有一个'array'的例子(请小一点?)我不确定这个类型。 –
假设你使用'numpy':尝试['numpy.save'](https://docs.scipy.org/doc/numpy-1.13.0/reference/generated/numpy.save.html),这节省了一个'.npy'文件。 – L3viathan
请举一个你阵列的例子。 –