2010-12-06 8 views
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' 

いただきましたへの効率的な方法が起こるしたいものを示してこれをやってみようか?

答えて

1

同じパスで自動的にデータセットを拡大することはできますか?うーん、私はこれについて考えていませんが、実装するには素晴らしい機能のように見えます(拡大可能な配列に対してのみ有効です)。チケットを追加しました:

http://pytables.org/trac/ticket/325

+0

これはまた、あなたが興味を持つかもしれない "ptrepack -v --overwrite-ノードnode1.h5:/ node2.h5:/" は、上のベース(すべてのデータをコピーするように見えますファイルのサイズを表示します)、ファイルの内容を表示すると1つのファイルグループしか表示されません。ただし、 "ptrepack -v --overwrite-nodes node1.h5:/ groups node2.h5:/ groups"を実行すると、コピー後にすべてが表示されます – Ben

関連する問題