我正在使用numpy并试图创建一个巨大的矩阵.执行此操作时,我收到内存错误
因为矩阵并不重要,所以我将展示如何轻松重现错误的方法.
a = 10000000000
data = np.array([float('nan')] * a)
Run Code Online (Sandbox Code Playgroud)
毫不奇怪,这引起了我的兴趣 MemoryError
我想说两件事:
是否有一种简单的方法来处理numpy中的大矩阵?
为了安全起见,我之前阅读过这些帖子(听起来很相似):
PS显然我在数字的乘法和除法方面存在一些问题,这让我觉得我有足够的记忆.所以我觉得是时候睡觉了,复习数学,也许是为了买些记忆.
也许在这段时间里,一些天才可能想出如何使用仅仅24 Gb的Ram实际创建这个矩阵.
为什么我需要这个大矩阵 我不会对这个矩阵进行任何操作.我需要做的就是把它保存到pytables中.
在我的python环境中,已经安装了Rpy和Scipy包.
我想解决的问题是这样的:
1)大量财务数据存储在文本文件中.无法加载到Excel
2)我需要总结某些字段并得到总数.
3)我需要根据总数显示前10行.
哪个包(Scipy或Rpy)最适合此任务?
如果是这样,你能否提供一些可以帮助我实施解决方案的指针(例如文档或在线示例)?
速度是一个问题.理想情况下scipy和Rpy可以处理大文件,即使文件太大而无法安装到内存中