我使用python从netcdf4文件中提取温度数据我使用了这些代码,但它只返回空值。
from netCDF4 import Dataset
nc = Dataset("GLDAS_NOAH025_3H.A20170102.0000.021.nc4","r")
for temp in nc.variables['AvgSurfT_inst'] :
print (temp)
输出:
[[[-- -- -- ..., -- -- --]
[-- -- -- ..., -- -- --]
[-- -- -- ..., -- -- --]
...,
[-- -- -- ..., -- -- --]
[-- -- -- ..., -- -- --]
[-- -- -- ..., -- -- --]]]
答案 0 :(得分:0)
通过使用np.ma.count_masked(data)
计算屏蔽值的数量,您可以轻松检查是否有所有/多少值被屏蔽(缺失)。例如,对于随机NetCDF文件:
import numpy as np
import netCDF4 as nc4
f = nc4.Dataset('bomex.ql.0000000.nc')
for v in f.variables:
arr = f.variables[v][:]
print('{0:}: values = {1:}, masked_values = {2:}'.format(v, np.size(arr), np.ma.count_masked(arr)))
这给了我类似的东西:
z:values = 32,masked_values = 0
zh:values = 33,masked_values = 0
u:values = 416,masked_values = 362
v:values = 416,masked_values = 362
w:values = 429,masked_values = 369