如何(1)批量选择所有的数组下一个HDF5文件,然后(2)对这些阵列应用的计算,最后3批在另一个HDF5文件中创建新的阵列?
例如:
import numpy
import tables
file = openFile('file1',"r")
array1 = file.root.array1
array1_cal = (array1 <= 1)
newfile.createArray('/','array1_cal',array1_cal)
array2 = file.root.array2
array2_cal = (array2 <= 1)
newfile.createArray('/','array2_cal',array2_cal)
我下单HDF5文件和几个HDF5文件100+阵列,我怎么能批量处理他们? 非常感谢。
随着PyTables可以使用walkNodes
功能通过递归迭代的节点。 下面是一个例子:
# Recursively print all the nodes hanging from '/detector'.
print "Nodes hanging from group '/detector':"
for node in h5file.walkNodes('/detector', classname='EArray'):
data = node[:]
// do some calculation
// store new array in second file
使用h5py,Python接口到HDF5。 h5py允许您使用传统的Python和NumPy的隐喻使用HDF5文件,组和数据集。
看到http://code.google.com/p/h5py/和http://alfven.org/wp/hdf5-for-python/