python如何进行人口预测_如何使用matlab建立人口预测模型

然后,再使用matlab进行该线性模型的参数求解及检验,代码如下:

%%人口预测模型

%下面有某地区30年的人口数据,试给出该地区人口增长的数学模型

clear;clc

y=[33815 33981 34004 34165 34212 34327 34344 34458 34498 34476 34483 34488 34513 34497 34511 34520 34507 34509 34521 34513 34515 34517 34519 34519 34521 34521 34523 34525 34525 34527];

% T=年份-起始年份

T=1:30;

%对数据作线性处理

for i=1:30,

x(i)=exp(-i);

Y(i)=1/y(i);

end

%计算回归系数b

c=zeros(30,1)+1;

X=[c,x'];

b=inv(X'*X)*X'*Y'

for i=1:30,

%计算拟合值

z(i)=b(1,1)+b(2,1)*x(i);

%计算离差

s(i)=Y(i)-sum(Y)/30;

%计算误差

w(i)=z(i)-Y(i);

end

%计算离差平方和

S=s*s';

%计算回归误差平方和

Q=w*w';

%计算回归平方和

U=S-Q;

%计算并输出F检验值

F=28*U/Q

%计算非线性回归模型的拟合值

for j=1:30,

p(j)=1/(b(1,1)+b(2,1)*exp(-j));

end

%输出非线性回归模型的拟合曲线

plot(T,y)

hold on

plot(T,p,'r-');

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值