Python将数据写入hdf5文件

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('

我想将复杂数据写入(6,31)维数据集中。 在第一列中应该有来自第一个输入文本文件的第一个复杂数据,在secound中应该有来自secound输入文本文件的数据

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阵列呢