【发布时间】:2020-10-17 04:49:03
【问题描述】:
我有一个 11GB 的 X.npy 文件,我无法完全加载到内存中。
X.npy 的形状是(18873, 224, 224, 3)
现在我只想从中加载几行(比如 1024)(:1024, 224, 224, 3)。如果不在我的内存中加载 X.npy,我怎么能做到这一点?
我在np.load 中没有找到参数来实现这一点。有没有别的办法?
我想这可以使用np.memmap 来完成,但我坚持使用偏移参数。它的行为很奇怪。 X.npy 的 dtype 为“float32”。
【问题讨论】:
-
HDF5 是一种解决此问题的文件格式。看看
h5pypython 包。 -
所以,我们有任何方法可以将 .npy 转换为 HDF5 格式,而无需将其加载到内存中,因为我只有 4GB 内存。
-
memmap 可以帮助转换文件
标签: python numpy file numpy-ndarray