在python中运行以下代码时:
lat, lon = f.variables['latitude'], f.variables['longitude']
latvals = lat[:]; lonvals = lon[:]
def getclosest_ij(lats,lons,latpt,lonpt):
dist_sq = (lats-latpt)**2 + (lons-lonpt)**2
minindex_flattened = dist_sq.argmin()
return np.unravel_index(minindex_flattened, lats.shape)
iy_min, ix_min = getclosest_ij(latvals, lonvals, 46.1514, 20.0846)
它得到以下错误:
ValueError Traceback (most recent call last)
ipython-input-104-3ba92bea5d48 in module()
11 return np.unravel_index(minindex_flattened, lats.shape) 12 iy_min, ix_min = getclosest_ij(latvals, lonvals, 46.1514, 20.0846)
ValueError:需要多于1个值才能解压缩
这是什么意思?我怎么能修好它? 我会读一个NetCDF文件,它由总的Column水数据组成,这些数据的维度包括:时间(124)、纬度(15)和经度(15)。我会根据具体的时间点(纬度,经度)和时间来调整tcw的量。我试图使用上面的代码来解决我任务的第一部分,即为特定的合作伙伴评估tcw,但是没有成功。在
提前感谢你的帮助。在
在python中,您可以编写
它将1存储在
var1
中,2存储在var2
中。 此功能称为解压缩。在因此,您的代码抛出的错误意味着函数
getclosest_ij
返回了一个值,而不是将它们解压缩为iy_min
和ix_min
所需的两个值相关问题 更多 >
编程相关推荐