% 中国人均耕地变化的R/S分析
% 计算差分序列并绘图
clear
t=[1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006]; %年份
X=[1.59 1.57 1.56 1.54 1.52 1.50 1.47 1.43 1.41 1.40 1.39]; %人均耕地
plot(t,X,'+r'); %绘制原始序列散点图
xlabel('年份t');ylabel('人均用地X'); %标注坐标轴
for i=1:length(X)-1
A(i)=X(i+1)-X(i);
end
A; %计算原始序列的差分序列
plot(A,'or');
hold on %保持图形
plot(A,'-b'); %绘制差分序列散点图
xlabel('时序r');ylabel('人均用地差分x'); %标注坐标轴
hold off %结束绘图
% 基于时滞计算差分的平均值序列
[m,n]=size(A); %计算差分数组的行列数
for i=1:n
M(i)=mean(A(1:i));
end
M; %计算平均值序列
% 基于时滞计算差分的标准差序列
for i=1:n
S(i)=std(A(1:i))*sqrt((i-1)/i);
end
S; %计算标准差序列
% 基于时滞计算差分的极差序列和R/S值
for i=1:n
for j=1:i
der(j)=A(1,j)-M(1,i);
cum=cumsum(der);
R(i)=max(cum)-min(cum);
end
end
R; %计算极差序列
RS=S(2:n).\R(2:n); %计算和R/S值
% 计算Hurst指数和相关参数并绘图
for i=1:n
T(i)=i;
end
lag=T(2:n); %给出从2到n的时滞数
plot(lag/2,RS,'.r'); %绘制R/S对时滞的散点图
xlabel('lag/2'); %横轴标签
ylabel('R/S'); %纵轴标签
hold on %保持图形
g=polyfit(log(lag/2),log(RS),1); %添加双对数趋势线
H=g(1) %给出Hurst指数
a=exp(g(2)) %给出比例系数
Cf=corrcoef(log(lag/2),log(RS)); %计算相关系数
R2=Cf(1,2)^2 %计算拟合优度
C=2^(2*H-1)-1 %计算自相关系数
f=a*(lag/2).^H; %幂指数模型
plot(lag/2,f) %在散点图中添加趋势线
hold off %结束绘图
% 中国人均耕地变化率的自相关估计
i=1:length(A)-1; %数据编号
plot(A(i),A(i+1),'*r'); %绘制自相关图
xlabel('A(i)'); %横轴标签
ylabel('A(i+1)'); %纵轴标签
hold on
g2=polyfit(A(i),A(i+1),1); %一次多项式曲线拟合
Cf2=corrcoef(A(i),A(i+1)); %计算相关系数矩阵
C2=Cf2(1,2) %给出相关系数
C3=g2(1) %给出回归系数
g(2) %给出模型常数
f2=g2(1)*A(i)+g2(2); %自回归模型
plot(A(i),f2) %在散点图中添加趋势线
hold off %结束绘图
beta=2*H+1
D=2-H