Arrays 使用列表从NetCDF4文件中提取数据
我使用与网格化NetCDF数组的x,y索引相对应的整数列表来提取特定值,初始代码是从中派生出来的。我的NetCDF文件在单个时间步中有一个维度,名为TMAX2M。我为执行此操作而编写的代码如下(请注意,我没有在脚本顶部显示netCDF4的调用): 执行代码,结果如下:Arrays 使用列表从NetCDF4文件中提取数据,arrays,python-3.x,indexing,netcdf,netcdf4,Arrays,Python 3.x,Indexing,Netcdf,Netcdf4,我使用与网格化NetCDF数组的x,y索引相对应的整数列表来提取特定值,初始代码是从中派生出来的。我的NetCDF文件在单个时间步中有一个维度,名为TMAX2M。我为执行此操作而编写的代码如下(请注意,我没有在脚本顶部显示netCDF4的调用): 执行代码,结果如下: masked_array(data=73,mask=False,fill_value=999999,dtype=int16] dataset_list = [] for i, j in point_list: datas
masked_array(data=73,mask=False,fill_value=999999,dtype=int16]
dataset_list = []
for i, j in point_list:
dataset_list.append(fh.variables['TMAX2M'][:][i,j])
这里的数据值是正确的,但是我希望输出只包含“data”中包含的整数。目标是传递多个x、y点,如上面链接的示例所示,并将它们合并到一个列表中
任何关于向代码中添加什么以实现此目标的建议都将非常有用 在数据集中的单个步骤上从x,y列表调用特定值的解决方案如下所示:
masked_array(data=73,mask=False,fill_value=999999,dtype=int16]
dataset_list = []
for i, j in point_list:
dataset_list.append(fh.variables['TMAX2M'][:][i,j])
前面的链接示例包含[0,16]对于索引变量,[:]可以在这种情况下使用。我建议转换为NumPy数组,如下所示:
for i, j in point_list:
dataset_list.append(np.array(fh.variables['TMAX2M'][i,j]))