h5py相关内容

添加存储在HDF5数据集中的大矩阵

我有两个具有相同结构的HDF5文件,每个文件存储一个相同形状的矩阵.我需要创建第三个HDF5文件,其中的矩阵表示上述两个矩阵的逐元素和.考虑到矩阵的大小非常大(在Gb-Tb范围内),最好的方法是并行处理?我正在使用HDF5库的h5py接口.有图书馆可以做到吗? 解决方案 是的,这是可能的.关键是要访问文件1和文件2中的数据切片.file2,按元素求和,然后将新数据片写入file3.您可以使 ..
发布时间:2021-05-13 20:14:15 Python

将数据集从1个HDF5文件提取到多个文件

在从HDF5生成img时,我实际上提出了一个问题.现在,我遇到的另一个问题是从现有的位置生成h5. 例如,我有一个[ABC.h5],里面有图像及其gt_density贴图的数据集.关键是[images,density_maps] 我想要[GT_001.h5],[GT_002.h5] ...,而不是单个h5文件.这是为每张图像提取的[density_maps]. 如何实现这一目标? ..
发布时间:2021-05-13 20:14:12 Python

如何使用h5py将数据写入复合数据?

我知道在 c 中,我们可以轻松地使用 struct 类型构造复合数据集,并逐块分配数据.我目前正在使用 h5py 在 Python 中实现类似的结构. 导入h5py将numpy导入为np#我们创建一个h5文件f = h5py.File("test.h5")#默认为模式"a"#我们使用np.dtype定义复合数据类型dt_type = np.dtype({"names":["image","fea ..
发布时间:2021-05-13 20:14:09 Python

向HDF5文件中添加新数据会导致一个空数组

在使用适用于Python的HDF5软件包时,我发现了一个奇怪的行为.我想在表中插入更多数据.但是不知何故我无法使其正常工作.正如您从源代码中看到的那样,我正在使用 fromRow = hf ["X"].shape [0] 获取键'X'中的最后一行数据,并编写了 tempArray2之后.结果是一个空表. 导入h5pytempArray1 = [[0.9293237924575806,-0.327 ..
发布时间:2021-05-13 20:14:06 Python

有没有一种方法可以使用POSIX_FADV_DONTNEED标志打开hdf5文件?

我们正在针对机器学习应用程序使用python中带有h5py的大型(1.2TB)未压缩,未分块的hdf5文件,该文件需要我们反复遍历整个数据集,并以随机顺序分别加载〜15MB的切片.我们正在使用具有192 GB RAM的Linux(Ubuntu 18.04)计算机.我们注意到该程序正在缓慢填充高速缓存.当高速缓存的总大小达到可与机器的全部RAM相媲美的大小时(可用内存几乎为0,但有足够的“可用"内存 ..
发布时间:2021-05-13 20:14:00 Python

Python无法打开.h5文件

我正在尝试打开HDF5文件以便使用python读取它,以便以后可以使用它做更多的事情.运行程序以读取文件时出现错误.该程序如下: import h5py#HDF5支持导入numpyfileName ="C:/.../file.h5"f = h5py.File(fileName,"r")对于f.attrs.keys()中的项目:打印项目+“:",f.attrs [项目]mr = f ['/ent ..
发布时间:2021-05-13 20:13:56 Python

具有版本控制的HDF5文件(h5py)-每次保存时哈希更改

我正在使用h5py将来自数字工作的中间数据存储在HDF5文件中.我的项目受版本控制,但是对于HDF5文件来说效果不佳,因为每次重新运行生成HDF5文件的脚本时,即使其中的数据不正确,二进制文件也会更改. 这里有一个小例子来说明这一点: 在[1]中:导入h5py,numpy作为np在[2]中:A = np.arange(5)在[3]中:f = h5py.File('test.h5','w') ..
发布时间:2021-05-13 20:13:52 Python

我们可以为类似python文件的对象禁用h5py文件锁定吗?

使用 h5py 打开HDF5文件时,您可以传入类似python文件的对象.我这样做了,其中类似文件的对象是我自己的基于网络的传输层的自定义实现. 这很好,我可以在高延迟传输层上切片大型HDF5文件.但是,HDF5似乎提供了其自己的文件锁定功能,因此,如果您在同一进程(线程模型)中以只读方式打开多个文件,则该文件仍只会有效地连续运行这些操作. HDF5中有一些支持并行操作的驱动程序,例如 ..
发布时间:2021-05-13 20:13:48 Python

使用h5py以写入模式打开已打开的hdf5文件

我同时运行同一Python程序和不同进程,所有这些程序都希望使用 h5py Python包写入同一 hdf5 文件.但是,只有一个进程可以在写入模式下打开给定的文件,否则会出现错误 OSError:无法打开文件(无法锁定文件,errno = 11,错误message ='资源暂时不可用') 在处理上述异常期间,发生了另一个异常: OSError:无法创建文件(无法打开文件:nam ..
发布时间:2021-05-13 20:13:43 Python

有没有办法在h5py中一次获取所有组中的数据集?

我的数据存储在.h5中.我使用以下代码显示组名,并调用其中一个组(Event_ [0])以查看其中的内容: ,其中h5py.File(data_path,'r')为f:ls = list(f.keys())print('数据集列表:\ n',ls)数据= f.get('group_1')数据集1 = np.array(数据)print('数据集1的形状:\ n',数据集1.shape)f.clo ..
发布时间:2021-05-13 20:13:39 Python

从多个hdf5组创建数据集

从多个hdf5组创建数据集 具有以下功能的组的代码 np.array(hdf.get('all my groups')) 然后我添加了用于从组创建数据集的代码. ,其中h5py.File('/train.h5','w')为hdf:hdf.create_dataset('train',数据= one_T + two_T + three_T + four_T + five_T) ..
发布时间:2021-05-13 20:13:36 Python

将包含jpeg图像的文件夹转换为hdf5

有没有办法在Python中将包含.jpeg图像的文件夹转换为hdf5?我正在尝试建立用于图像分类的神经网络模型.谢谢! 解决方案 有很多方法可以处理和保存图像数据.这是读取1个文件夹中的所有图像文件并将其加载到HDF5文件中的方法的2种变体.此过程的概述: 计算图像数量(用于调整数据集大小). 创建HDF5文件(前缀: 1ds _ ) 创建具有适当形状和类型(整数)的空数据集 ..
发布时间:2021-05-13 20:13:33 其他开发

有没有一种方法可以从HDF5数据集中删除行?

我创建了一个约有210万个实例的H5PY数据集.问题是我已经填满了除最后一行以外的所有行.我想删除最后一行,但不确定这样做是否可行或安全. 这是如何创建数据集的摘录: shape =(dataset_length,args.batch_size,2048,1,1)与h5py.File(path,mode ='a')as hdf5_file:array_40 = hdf5_file.cre ..
发布时间:2021-04-29 18:47:22 Python

如何将大HDF5文件拆分为多个小HDF5数据集

我有一个很大的HDF5文件,其中包含图像及其对应的地面真相密度图.我想将它们放入网络CRSNet,它需要将图像放在单独的文件中.我该如何实现?非常感谢. -基本信息我有一个带有两个键"images"的HDF5文件.和"density_maps".它们的形状是(300,380,676,1).300代表图像数量,380和676分别代表高度和宽度. -我需要放入CRSNet网络中的是带有相应 ..
发布时间:2021-04-23 20:28:35 Python

使用h5py压缩现有文件

我目前正在从事有关HDF5数据集压缩的项目,并且最近开始使用h5py.我遵循了基本教程,并且能够在创建文件时打开,创建和压缩文件.但是,在压缩现有文件方面,我一直没有成功(这是我的工作目标). 我尝试使用'r +'打开文件,然后压缩分块数据集,但文件大小保持不变. 关于使用什么命令的任何建议,或者我会以错误的方式处理事情? 解决方案 HDF组提供了一组工具来转换,显示,分析,编 ..
发布时间:2021-04-23 20:19:18 Python

H5py中更大的压缩文件

我正在使用h5py从python以HDF5格式保存numpy数组.最近,我尝试应用压缩,并且得到的文件更大... 我是从这样的事情开始的(每个文件都有几个数据集) self._h5_current_frame.create_dataset(“估算位置",shape = estimated_pos.shape,dtype = float,data = estimated_pos) 对于 ..
发布时间:2021-04-23 20:18:40 Python

如果dtype为“< u4",则在python 3.6中如何从hdf5文件中获取数据数组?

我想从hdf5文件中获取格式为{N,16,512,128}的数据集作为4D numpy数组.N是具有{16,512,128}格式的3D数组的数量.我尝试这样做: import os导入系统将h5py导入为h5将numpy导入为np导入子流程汇入file_name = sys.argv [1]路径= sys.argv [2]f = h5.File(文件名,'r')数据= f [路径]print( ..
发布时间:2021-04-16 20:41:42 Python

AttributeError:'int'对象没有属性'encode'HDF5

我正在尝试使用以下代码在Python中打开HDF5文件: ,其中h5py.File('example.hdf5','r')为f:ls = list(f.keys())dat = f.get('data')dt = np.array(dat) 但是,执行最后一行时出现此错误: AttributeError:'int'对象没有属性'encode' dat具有以下类别: h5py._h ..
发布时间:2021-04-16 20:20:50 Python