python实现不同分辨率的海洋⽓象数据,线性插值成统⼀的分辨率(以nc⽂件
为例)
气象python零基础入门教程
最近,在处理SST以及OLR数据时,需要将两组不同的分辨率的数据插值统⼀分辨率。
其中,SST的⽔平⽹格分辨率为1°×1°,OLR的⽔平⽹格分辨率为2.5°×2.5°。
我需要将SST的数据插值为2.5°×2.5°分辨率。
这⾥主要使⽤xarray进⾏处理。因为xarray中对scipy的插值函数已经进⾏了封装,所以只需要对DataArray,DataSet使⽤interp()函数就可以实现插值了,⾮常⽅便、简单。
代码如下:
import xarray as xrobject和class的关系
net user命令的作用
path1='F://'
olr=xr.open_dataset(path1)#读取数据
竞猜游戏网站源码path2='F://'
da = xr.open_dataset(path2)#读取数据
sst = da['sst']#读取sst数据,读完后也是⼀个DataSet
#以下这⼀步就是插值的过程
sst= sst.interp(lat=olr.lat.values, lon=olr.lon.values)
undermine近义词在处理之前,我已经查看了sst以及olr的三个维度属性:
case语句怎么画流程图sst的经纬度:180360
olr的经纬度:73144
所以,我只需要按照⽬标分辨率的经纬度(既olr的经纬度)对sst数据进⾏插值即可。
打开插值后的sst,发现分辨率已经与OLR⼀致啦~
是不是⾮常⽅⾯快捷呢!感兴趣的⼩伙伴赶快试试吧!
另外,可以将插值好的数据导出为⼀个新的nc⽂件,以便下次快速读取哦~~
<_netcdf('D:\\desktopppp\\')
⼀个努⼒学习python的海洋⼩⽩
⽔平有限,欢迎指正
欢迎评论、收藏。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。