0
ptrepackほとんどの場合、重複するパスを上書きまたは無視するオプションがあります。以下の例は、私が構造に2 hdf5ファイルとpytablesをマージする
入力ファイル1
/ (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'
入力ファイル2
/ (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'
所望の出力
/ (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'
いただきましたへの効率的な方法が起こるしたいものを示してこれをやってみようか?
これはまた、あなたが興味を持つかもしれない "ptrepack -v --overwrite-ノードnode1.h5:/ node2.h5:/" は、上のベース(すべてのデータをコピーするように見えますファイルのサイズを表示します)、ファイルの内容を表示すると1つのファイルグループしか表示されません。ただし、 "ptrepack -v --overwrite-nodes node1.h5:/ groups node2.h5:/ groups"を実行すると、コピー後にすべてが表示されます – Ben