ptrepack est presque ce que je veux, sauf qu'il a seulement les options pour écraser ou ignorer les chemins en double. l'exemple ci-dessous illustre ce que je veux passer avec les structuresfusionner 2 fichiers hdf5 avec pytables
fichier d'entréeun
/ (RootGroup) ''
/data_set_name (Group) 'group of images files'
/data_set_name_Set (EArray(7913, 128)) ''
/data_set_name/image_set_index (Table(3,)) ''
/data_set_name/i100 (Group) 'sift features and coordinates'
/data_set_name/i100/descriptors (Array(7913, 128)) 'sift descriptors'
/data_set_name/i100/locations (Array(7913, 4)) 'sift feature locations'
fichier d'entrée
deux
/ (RootGroup) ''
/data_set_name (Group) 'group of images files'
/data_set_name_Set (EArray(4328, 128)) ''
/data_set_name/image_set_index (Table(4,)) ''
/data_set_name/i1156 (Group) 'sift features and coordinates'
/data_set_name/i1156/descriptors (Array(4328, 128)) 'sift descriptors'
/data_set_name/i1156/locations (Array(4328, 4)) 'sift feature locations'
de sortie souhaitée
/ (RootGroup) ''
/data_set_name (Group) 'group of images files'
/data_set_name_Set (EArray(12241, 128)) ''
/data_set_name/image_set_index (Table(7,)) ''
/data_set_name/i100 (Group) 'sift features and coordinates'
/data_set_name/i100/descriptors (Array(7913, 128)) 'sift descriptors'
/data_set_name/i100/locations (Array(7913, 4)) 'sift feature locations'
/data_set_name/i1156 (Group) 'sift features and coordinates'
/data_set_name/i1156/descriptors (Array(4328, 128)) 'sift descriptors'
/data_set_name/i1156/locations (Array(4328, 4)) 'sift feature locations'
Ce qui est un moyen efficace de va faire ça?
cela pourrait aussi vous intéresser « ptrepack -v --overwrite nœuds node1.h5:/node2.h5:/» semble copier toutes les données (sur la base la taille du fichier) mais un seul groupe de fichiers est visible lors de l'affichage du contenu du fichier. cependant faire "ptrepack -v --overwrite-nodes node1.h5:/groupes node2.h5:/groups" tout est visible après la copie – Ben