基于matlab的長時間柵格序列的殘差分析

在量化人類活動對生態(tài)參量的影響時,常常引入殘差分析法來進行量化,本文在matlab平臺下對NDVI進行殘差分析,選取的自變量是降水和溫度。代碼如下所示,通過下面代碼,能夠獲取殘差的空間分布及殘差趨勢以及統(tǒng)計得到的研究區(qū)每年的殘差值。

%author yinlichang3064@163.com
[aa,R]=geotiffread('D:\年NDVI\2000anveage_ndvi.tif');%先投影信息
info=geotiffinfo('D:\年NDVI\2000anveage_ndvi.tif');
[m,n]=size(aa);

begin_year=2000;%用戶修改
end_year=2017;%用戶修改
long=end_year-begin_year+1;
temsum=zeros(m*n,long);
presum=zeros(m*n,long);
ndvisum=zeros(m*n,long);
k=1;
for year=begin_year:end_year 
     temp=importdata(['D:\年NDVI\',int2str(year),'TEMP.tif']) ; %根據(jù)自己名稱修改,本數(shù)據(jù)名稱為2000TEMP.tif
     pre=importdata(['D:\年NDVI\',int2str(year),'PRE.tif']) ; %根據(jù)自己名稱修改,本數(shù)據(jù)名稱為2000PRE.tif
     ndvi=importdata(['D:\年NDVI\',int2str(year),'anveage_ndvi.tif']) ; %根據(jù)自己名稱修改,本數(shù)據(jù)名稱為'anveage_ndvi.tif'
     %注意數(shù)據(jù)的有效范圍
     temp(temp<-1000)=NaN;%溫度有效范圍
     pre(pre<0)=NaN;%有效范圍大于0
     ndvi(ndvi<-1)=NaN; %有效范圍是-1到1
     temsum(:,k)=reshape(temp,m*n,1);
     presum(:,k)=reshape(pre,m*n,1);
     ndvisum(:,k)=reshape(ndvi,m*n,1);
     k=k+1;
end
%多元回歸,ndvi=a*pre+b*tem
cc=zeros(m,n)+NaN;
ccsum=zeros(m*n,long)+NaN;
for i=1:m*n
    pre=presum(i,:)';
    if min(pre)>=0 %進行篩選有效范圍
        ndvi=ndvisum(i,:)';
        tem=temsum(i,:)';
        X=[ones(size(ndvi)),tem,pre];
        [b,bint,r,rint,stats] = regress(ndvi,X);
        cc1=ndvi-b(1)-b(2).*tem-b(3).*pre;
        cc1=cc1';
        ccsum(i,:)=cc1;
        cc1=cc1';
        X=[ones(size(ndvi)),[1:long]'];
        [b,bint,r,rint,stats] = regress(cc1,X);
        cc(i)=b(2);
    end
end
filename=['D:\年NDVI\2000-2017年殘差的趨勢.tif'];
geotiffwrite(filename,cc,R,'GeoKeyDirectoryTag',info.GeoTIFFTags.GeoKeyDirectoryTag)
data2sum=[];
for i=1:long
    data1=ccsum(:,i);
    data2=mean(~isnan(data1));
    data2sum=[data2sum;data2];
    data1=reshape(data1,m,n);
    filename=['D:\年NDVI\殘差',int2str(i-1+begin_year),'.tif'];
    geotiffwrite(filename,data1,R,'GeoKeyDirectoryTag',info.GeoTIFFTags.GeoKeyDirectoryTag)
end
data2sum=[[begin_year:end_year]',data2sum];
xlswrite('D:\年NDVI\每年的殘差均值.xlsx',data2sum)

更多需求,請查看個人介紹

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容