将dask数组保存到hdf5文件时可以选择文件模式吗?
to_hdf5
方法没有mode
关键字。
测试:
import dask.array as da
a = da.arange(12, chunks=3)
a.to_hdf5('a.hdf5', '/a', mode='a')
结果:
...
TypeError: make_new_dset() got an unexpected keyword argument 'mode'
答案 0 :(得分:1)
根据docs,to_hdf()
使用h5py.File.create_dataset
,并将参数传递给它-也就是说,默认情况下它将附加到现有文件/数据集。另外,如果您想进一步控制如何写入数据,则.store()
下的示例可能会说明问题:
>>> import h5py
>>> f = h5py.File('myfile.hdf5')
>>> dset = f.create_dataset('/data', shape=x.shape,
... chunks=x.chunks,
... dtype='f8')
>>> store(x, dset)
这实际上具有相同的作用,但是您可以通过任何方便的方式创建文件和数据集-store()
仅需要具有类似numpy数组的接口的东西。