python 如何实现5°×5°的空间窗口滑动
2021/10/19 22:11:04
本文主要是介绍python 如何实现5°×5°的空间窗口滑动,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
python 如何实现5°×5°的空间窗口滑动
近期,在处理数据分析资料时,需要对数据进行空间窗口滑动,统计每个窗口内数据的数目等信息。举个例子,对数据进行每5°为间隔的经纬度滑动,每次都是一个5×5的窗口。其实,对于空间窗口的滑动,无非是对经纬度数据进行循环读取。对于纬度的滑动,在此之前我已经写过一些内容:
1、将纬度按照10°为区间进行划分,并筛选在不同区间内sss的个数
2、对一组list数据,进行区间划分
这次的方法就是再其基础上,加上对于经度的循环罢了,感兴趣的同学朋友可以翻看一下前面的内容。下面直接开始分享今天的算法教程吧~
我读取的数据主要是sea surface Temperature(sst),它是一个三维的数据(时间×纬度× 经度)
#read nc file path0='D:\\sst.nc' ds=xr.open_dataset(path0).sortby("lat", ascending= True)#转换lat排序 sst=ds.sel(lat=slice(-20,20),time=slice('2010','2010'))#选择某一年的数据 ### 读取经纬度数据 lons=sst.lon.data lats=sst.lat.data # 挑出nan值的数据,方便后面的数据计算 masker=(np.isfinite(sst_day) & np.isfinite(( olr_day))).data # 17和144分别是经纬度的个数,也可以用sst.lat.shape[0]\sst.lon.shape[0]表示,我这里直接打出个数 for i in range(1,17,1): for j in range(1,144,1): sub_sst=( sst_day[:,i-1:i+2,j-1:j+2]).data[masker[:,i-1:i+2,j-1:j+2]]
这样,读取出来的sub_sst应该是循环到最好的一个5×5的空间窗口了。下面,大家就可以根据需要进行对应的计算就好了
一个努力学习python的海洋菜鸡 水平有限,欢迎指正!!! 欢迎关注、点赞、评论、收藏。
这篇关于python 如何实现5°×5°的空间窗口滑动的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-14获取参数学习:Python编程入门教程
- 2024-11-14Python编程基础入门
- 2024-11-14Python编程入门指南
- 2024-11-13Python基础教程
- 2024-11-12Python编程基础指南
- 2024-11-12Python基础编程教程
- 2024-11-08Python编程基础与实践示例
- 2024-11-07Python编程基础指南
- 2024-11-06Python编程基础入门指南
- 2024-11-06怎么使用python 计算两个GPS的距离功能-icode9专业技术文章分享