代码之家  ›  专栏  ›  技术社区  ›  R zu

选择将Dask阵列保存到hdf5文件的模式

  •  0
  • R zu  · 技术社区  · 6 年前

    当我将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'
    
    1 回复  |  直到 6 年前
        1
  •  1
  •   mdurant    6 年前

    根据 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数组的接口。