我怎么能自动处理提升的文件名和数组名称中与NumPy:处理(遍历)数(HDF5)文件和几个节点在每个HDF文件
我有一个名为一系列HDF5文件:
20120101.hdf5, 20120102.hdf5, 20120103.hdf5, ..., 20120130.hdf5, 20120131.hdf5
每个HDF5文件中包含多个阵列的命名:
array1, array2, array3, ..., array24
我想seperately修改每个阵列,然后创建相应的新HDF5文件。例如,使用20120101.hdf5
:
import numpy
import tables
file = openFile("20120101.hdf5","r")
b1 = file.root.array1
c1 = (b1<=1)
new20120101_array1 = creatArray('/','1',c1)
c2 = ((b1<=2) and (b>1))
new20120101_array1 = creatArray('/','2',c2)
.
.
.
c20 = ((b1<=20) and (b>19))
new20120101_array1 = creatArray('/','20',c20)
并对数组2-24重复它。其结果是,我想有:
new20120101.hdf5 ---- new20120101_array1 ---- 1
2
...
20
---- new20120101_array2 ---- 1
...
20
...
---- new20120101_array24 --- 1
...
20
new20120102.hdf5
....
new20120131.hdf5
究竟是什么问题? – user545424
如何自动执行此操作?而不是手动更改名称? –
您的代码写得不对: 如果您执行'import tables',那么您必须将这个模块中的所有函数编写为'tables.function'。如果你写'file = openFile(...)'和'new = creatArray(...)'它不会工作!要使用你写的代码,你必须调用这个模块作为'from tables import openFile,creatArray'或'from table import *' – carla