在Python中导入数据时解决内存错误

时间:2014-06-06 19:02:27

标签: python memory

我试图将数据 - 以许多大型.dat文件的形式 - 导入到python中进行计算模拟。文件本身只是数据字符串,我想把它们放入两个(最终是一个)位置数据数组,由文件分隔。 Python会很好地导入一个,但是当它到达第二组的大约1/3时(每组是159个文件),它会崩溃并引用MemoryError。我清楚地理解错误的含义,但我已经尝试过这个网站上的每个解决方案,但没有任何效果。有没有人有任何建议来规避这个问题?不幸的是,我最终将所有数据作为一个整体需要,因此任何类型的分块(除非它仅适用于导入本身)将不起作用。任何帮助将非常感激。

编辑1

为了回应有用的讽刺,我正在尝试使用

创建数组
xfile_list = glob.glob('Path\\/*dat')

xpos = []

for file_path in xfile_list:
    xpos.append(genfromtxt(file_path, delimiter = '\t'))

从给定目录导入文件(并复制到包含ypos)。此外,数据本身总计108158 * 1470 = 158992260个元素,每组1.6GB。这最终意味着我希望在一个阵列中使用这两倍的量。

0 个答案:

没有答案