gpt4 book ai didi

python - 如何使用 h5py 覆盖 h5 文件中的数组

转载 作者:IT老高 更新时间:2023-10-28 22:07:59 26 4
gpt4 key购买 nike

我正在尝试覆盖一个 numpy 数组,它是一个非常复杂的 h5 文件的一小部分。

我正在提取一个数组,更改一些值,然后想将数组重新插入到 h5 文件中。

提取嵌套的数组没有问题。

f1 = h5py.File(file_name,'r')
X1 = f1['meas/frame1/data'].value
f1.close()

我尝试的代码看起来像这样但没有成功:

f1 = h5py.File(file_name,'r+')
dset = f1.create_dataset('meas/frame1/data', data=X1)
f1.close()

作为健全性检查,我使用以下代码在 Matlab 中执行了此操作,并且没有任何问题。

h5write(file1, '/meas/frame1/data', X1);

有人对如何成功地做到这一点有任何建议吗?

最佳答案

您想要分配值,而不是创建数据集:

f1 = h5py.File(file_name, 'r+')     # open the file
data = f1['meas/frame1/data'] # load the data
data[...] = X1 # assign new values to data
f1.close() # close the file

确认更改已正确进行并保存:

f1 = h5py.File(file_name, 'r')
np.allclose(f1['meas/frame1/data'].value, X1)
#True

关于python - 如何使用 h5py 覆盖 h5 文件中的数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22922584/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com