灰色预测模型 matlab人口预测模型代码如下

%%发展系数a 灰色作用量b
syms a b;

%%原始数列 E列
A1 = xlsread(‘C:\Users\0223\Documents\MATLAB\劳动人口 .xlsx’,‘C1:C11’);
A = A1’;
A = A.*0.01;
n = length(A);

%%进行一次累加
B(1) = A(1);
for i = 2 : n
B(i) = B(i-1) + A(i);
end

%%均值生成
for i = 2 : n
Z(i) = (B(i) + B(i-1))*0.5;
end
Z(1) = [];

%%构造Y B矩阵
Y = A; Y(1) = []; Y = Y’;
B = [-Z;ones(1,n-1)];

%%计算a b参数值
q = sum(Z);
w = sum(A) - A(1);
e = 0;
for i = 2 : n
e = e + Z(i-1)*A(i);
end
r = 0;
for i = 2 : n
r = r + Z(i-1)*Z(i-1);
end

a = ( (qw) - (n-1)e ) / ( (n-1)r - (qq) );
b = ( (w
r) - (q
e) ) / ( (n-1)r - (qq) );

%%预测近4年的数据
yuce = [];
yuce(1) = A(1);
for i = 2 : (n + 4)
yuce(i) = ((A(1) - b/a))/exp(a*(i-1)) + b/a;
end

%%还原数据
huanyuan = [];
huanyuan(1) = A(1);
for i = 2 : (n+4)
huanyuan(i) = yuce(i) - yuce(i-1);
end

%%模型检验
canchazhi = abs(0.784 - 0.789691929) / 0.784

  • 4
    点赞
  • 64
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值