我需要循环创建包含值(float32)的字典,最终我可以将其放入一个字典中,其中键是名称,值是一个4D数组,这些值进入第一个维度
尝试打印出“turb”、“gtg”、“level”和“climo\u grib”字典的形状和类型,以确保它们都是相同的。好像想不通
validfiles00 = glob.glob(gribdir + '*18f0*')
validfiles06 = glob.glob(gribdir + '*00f0*')
validfiles12 = glob.glob(gribdir + '*06f0*')
validfiles18 = glob.glob(gribdir + '*12f0*')
levels = [1000,850,700,500,400,300,250,200,150,100]
hrs = ['00','06','12','18']
gtg = collections.OrderedDict()
for hr in hrs:
for lev in levels:
gtg['gtg{0}_{1}'.format(hr,lev)] = np.empty((len('validfiles'+hr), len(levels), 721, 1440),dtype=np.float32)
index = 0
climo_grib = {}
level = {}
turb = {}
for grb in validfiles00:
for lev in levels:
for hr in hrs:
climo_grib['climo_grib{0}_{1}'.format(hr,lev)] = pygrib.index(grb,"level")
for cg in climo_grib:
level['level{0}_{1}'.format(hr,lev)] = climo_grib[cg].select(level=lev)
for l in level:
turb['turb{0}_{1}'.format(hr,lev)] = level.values()
for t in turb:
for g in gtg:
gtg[g][index:,:,:] = turb[t]
index = index + 1
这个特定的代码顺序会产生错误:“ValueError:用序列设置数组元素。”
最终,我需要一个字典(比如上面的gtg),或者一些集合来调用from,其中4D数组作为值,循环中的值作为第一维。例如,如果我要调用gtg['gtg00\u 1000'],我想得到实际的浮点数作为输出。 提前谢谢
目前没有回答
相关问题 更多 >
编程相关推荐