是否可以创建一个numpy.memmap的数组数组?

时间:2019-04-15 05:55:16

标签: python numpy numpy-ndarray numpy-memmap memmap

我有一个要保存到磁盘的(4,)数组(我正在使用的大小无法容纳到内存中,因此我需要动态加载所需的内容)。但是,我想将它放在一个numpy.memmap中。不知道是否有可能,但是任何建议将不胜感激。

我没有numpy.memmap

arr1 = [1,2,3,4]
arr2 = [2,3,4,5]
arr3 = [3,4,5,6]
arr4 = [4,5,6,7]
data = []
data.extend([arr1])
data.extend([arr2])
data.extend([arr3])
data.extend([arr4])
print(data)
  

[[1、2、3、4],[2、3、4、5],[3、4、5、6],[4、5、6、7]]

我希望能够做这样的事情:

import numpy as np

arr1 = np.memmap('./file1', np.dtype('O'), mode='w+', shape=(4,))
arr1[:] = [1,2,3,4]
arr2 = np.memmap('./file2', np.dtype('O'), mode='w+', shape=(4,))
arr2[:] = [2,3,4,5]
arr3 = np.memmap('./file3', np.dtype('O'), mode='w+', shape=(4,))
arr3[:] = [3,4,5,6]
arr4 = np.memmap('./file4', np.dtype('O'), mode='w+', shape=(4,))
arr4[:] = [4,5,6,7]
data = []
data.extend([arr1])
data.extend([arr2])
data.extend([arr3])
data.extend([arr4])
print (data)
  

[memmap([1, 2, 3, 4], dtype=object), memmap([2, 3, 4, 5], dtype=object), memmap([3, 4, 5, 6], dtype=object), memmap([4, 5, 6, 7], dtype=object)]

这需要我为每个数组创建不同的文件,而且我真的想拥有一个memmap来处理整个4个微型数组。有人可以提供使用memmaps的方法吗? ?

扩展data.extend()的能力非常重要,因为我不知道我有多少个微型阵列。

0 个答案:

没有答案