是否可以从HDF5数据集中删除行?

问题描述 投票:0回答:1

我创建了一个H5PY数据集,大约有210万个实例。问题是我已经填满了除最后一行以外的所有行。我想删除最后一行,但不确定是否可行或安全。

这是如何创建数据集的代码段:

shape = (dataset_length, args.batch_size, 2048, 1, 1)

with h5py.File(path, mode='a') as hdf5_file:
       array_40 = hdf5_file.create_dataset(
                  f'{phase}_40x_arrays',  shape, maxshape=(None, args.batch_size, 2048, 1, 1)


# either new or checkpointed file exists
# load file and create references to exisitng h5 datasets
with h5py.File(path, mode='r+') as hdf5_file:
      array_40 = hdf5_file[f'{phase}_40x_arrays']

     for i, (inputs40x, labels) in enumerate(dataloaders_dict):

          inputs40x = inputs40x.to(device)
          x40 = resnet(inputs40x)
          array_40[batch_idx, ...] = x40.cpu()

          hdf5_file.flush()

我不确定是否需要将所有实例复制到新的数据集中。我尝试调整大小,但是没有用...

干杯,

python dataset hdf5 h5py
1个回答
0
投票

这是一个非常简单的示例,用于演示一个数据集的dataset.resize()

© www.soinside.com 2019 - 2024. All rights reserved.