Python将数据写入hdf5文件
我想将复杂数据写入(6,31)维数据集中。 在第一列中应该有来自第一个输入文本文件的第一个复杂数据,在secound中应该有来自secound输入文本文件的数据Python将数据写入hdf5文件,python,hdf5,Python,Hdf5,我想将复杂数据写入(6,31)维数据集中。 在第一列中应该有来自第一个输入文本文件的第一个复杂数据,在secound中应该有来自secound输入文本文件的数据 import numpy,sys import h5py as H5 ####################################################### def CreateH5(argv): F=H5.File("S12.h5","w") dset=F.create_dataset('
import numpy,sys
import h5py as H5
#######################################################
def CreateH5(argv):
F=H5.File("S12.h5","w")
dset=F.create_dataset('S11',(6,31),dtype='complex128')
for arg in argv:
S11f = numpy.loadtxt(arg,skiprows=3)
S11fc=S11f[:,1]*numpy.exp(S11f[:,-1]*1j*(180./numpy.pi))
for i in range(dset):
dset[i]=S11fc
if __name__=='__main__':
CreateH5(sys.argv[1:])
我不知道如何处理范围内I(dset)的
:
我不确定您试图用forloop做什么。据我所知,您有6个文件,每个文件中有31个复杂值,您希望数据集中有这些值吗
如果是这样,只需枚举argv上的循环并将numpy数组放入数据集中:
for index, arg in enumerate(argv):
S11f = numpy.loadtxt(arg,skiprows=3)
S11fc=S11f[:,1]*numpy.exp(S11f[:,-1]*1j*(180./numpy.pi))
dset[index] = S11fc
但是为什么要使用hd5f而不是简单的numpy阵列呢