私は、64ビットバージョンのEnthought Pythonを使用して、複数のHDF5ファイル間でデータを処理しています。64ビットWindowsでh5pyバージョン1.3.1(HDF5 1.8.4)を使用しています。
特定のデータ階層への便利なインターフェイスを提供するオブジェクトがありますが、h5py.File(fname、'r')を個別にテストすると同じ結果が得られます。私は長いリスト(一度に最大100個のファイル)を繰り返し処理し、ファイルから特定の情報を引き出しようとしています。私が抱えている問題は、いくつかのファイルから同じ情報を取得していることです。私のループは次のようになります。
files = glob(r'path\*.h5')
out_csv = csv.writer(open('output_file.csv', 'rb'))
for filename in files:
handle = hdf5.File(filename, 'r')
data = extract_data_from_handle(handle)
for row in data:
out_csv.writerow((filename, ) +row)
hdfviewのようなものを使用してファイルを検査すると、内部が異なることがわかります。ただし、取得したcsvは、すべてのファイルに同じデータが含まれていることを示しているようです。誰かが以前にこの振る舞いを見たことがありますか?この問題のデバッグを開始するために行くことができる提案はありますか?