基于matlab 的长时间栅格数据的Sen+MK显著性检验趋势分析

在前一篇文章中讲述了用sen法进行长时间的趋势分析,但并未对结果进行显著性检验,通常Sen与MK检验是结合在一起的,
因此本文主要讲述如何进行MK检验。具体代码如下

% @author [email protected]
clear
[a,R]=geotiffread('D:\GIS\vegetation\output\yearmax\1982.tif'); %先导入投影信息
info=geotiffinfo('D:\GIS\vegetation\output\yearmax\1982.tif');%先导入投影信息
[m,n]=size(a);
cd=34;       %34年,时间跨度  
datasum=zeros(m*n,cd)+NaN; 
p=1;
for year=1982:2015      %起始年份
     filename=['D:\qixiang\年全国8kmPET\china',int2str(year),'pet.tif'];
    data=importdata(filename);
    data=reshape(data,m*n,1);
    datasum(:,p)=data;         %
    p=p+1;
end
sresult=zeros(m,n)+NaN;

for i=1:size(datasum,1)        %
    data=datasum(i,:);
    if min(data)>0       % 有效格点判定,我这里有效值在0以上
        sgnsum=[];  
        for k=2:cd
            for j=1:(k-1)
                sgn=data(k)-data(j);
                if sgn>0
    

你可能感兴趣的:(北京三年,matlab,笔记)