我有一个维度为(时间=410,纬度=72,经度=144)的全球降水数据。我希望将 lat 插入 180 和 lon 插入 360(即,将数据从 2.5 度缩小到 1 度)。
在Matlab中我曾经这样做:
%LAT,LON,XI,YI are old and new meshgridded lat-lons
for t = 1:size(precip,1)
newPrecip(t,:,:)=interp2(LON,LAT,squeeze(precip(t,:,:)),XI,YI);
end
在 python 中,我尝试了interp2d
、map_coordinates
和interp
(basemap) 函数,但没有成功。
这是我的代码map_coordinates
,它让我最接近得到结果
new_indicies = np.mgrid[0:410, -89.5:89.5:180J, -179.5:179.5:360J]
newPrecip = ndimage.map_coordinates(precip, new_indicies, order=1)
新数据确实具有我想要的尺寸(410,180,360),但它实际上并没有插值,而是用 0 值填充新添加的网格(围绕原始数据)。
我是 python 新手,如果能帮助我解决这个问题,我将不胜感激。