dset = h5py.File("/2tbhd/tst.h5py","r")
from simpleview import SimpleView
X_view = SimpleView(dset['X'])
# Stores slices, but doesn't load into memory
X_train = X_view[:N/2]
X_test = X_view[N/2:-1]
# These statements will load the data into memory.
print numpy.sum(X_train)
print numpy.array(X_test)[0]
没有
您需要实现自己的类来充当数据集的视图。^h5py邮件列表上的{a1}表明这样一个
DatasetView
类在理论上是可以使用HDF5数据空间实现的,但在许多用例中可能不值得这样做。与普通的numpy数组相比,元素访问会非常慢(假设您可以将数据放入内存)。在编辑:如果您想避免弄乱HDF5数据空间(无论这意味着什么),您可以选择一种更简单的方法。试试看我刚刚写的。这样使用:
请注意,这个简单示例中的切片支持有点有限。如果您想要完整切片和元素级访问,则必须将其复制到实际数组中:
^{pr2}$相关问题 更多 >
编程相关推荐