我们在使用各种栅格化数据(或者网格数据,比如城市夜晚灯光,人口密度分布等)的时候,经常会需要把下载到的数据的空间分辨率变成我们所需要的空间分辨率,这个时候你会怎么办呢?写一个循环?然后一个格点一个格点地算?今天我加班提前更一篇博客,教你优雅地进行数据同化。(这个方法仅限于数据源与目标数据地格点间具有确定关系的情况,比如卫星Level2到Level3的同化就不适用了,后者以后我们会说到,同样要等我的文章发表)
导入数据和所需库
实际上整个工作只需要用到numpy这一个库,但是呢,为了检验和展示,我们可以用matplotlib画出图来看看。另外这里我们还用到了scipy.stats这个库来计算众数。在进行数据同化的时候最常用的是简单的平均,但是也会有用到众数或者分位数的情况(比如对土地利用类型进行regrid)。
from scipy.stats import mode
from numpy import *
import matplotlib.pyplot as plt