必威体育Betway必威体育官网
当前位置:首页 > IT技术

数据拟合丨人口预测模型

时间:2019-06-02 13:44:08来源:IT技术作者:seo实验室小编阅读:86次「手机版」
 

人口预测模型

数据拟合丨人口预测模型

路漫漫其修远兮,吾将上下而求索

  下表所列是某地区1971一2000年的人口数据,试给出该地区人口增长的数学模型。

年 份 时间变量 t" role="presentation">t=年份-1970 人口 y" role="presentation">y/人 年 份 时间变量 t" role="presentation">t=年份-1970 人口 y" role="presentation">y/人
1971 1 33815 1986 16 34520
1972 2 33981 1987 17 34507
1973 3 34004 1988 18 34509
1974 4 34165 1989 19 34521
1975 5 34212 1990 20 34513
1976 6 34217 1991 21 34515
1977 7 34344 1992 22 34517
1978 8 34458 1993 23 34519
1979 9 34498 1994 24 34519
1980 10 34476 1995 25 34521
1981 11 34483 1996 26 34521
1982 12 34488 1997 27 34523
1983 13 34513 1998 28 34525
1984 14 34497 1999 29 34525
1985 15 34511 2000 30 34527

  根据表中的数据,做出散点图,如图所示。

  由图可以看出,人口随时间的变化呈非线性变化,而且存在一个与横坐标轴平行的渐近线,故可以用logistic曲线模型进行拟合。

  因为Logistic曲线模型的基本形式为

y=1a+be−t" role="presentation">y=1a+bet

  所以,只要令y′=1y,x′=e−t" role="presentation">y=1yx=et,就可以将其转化为直线模型

y′=a+bx′" role="presentation">y=a+bx

  下面,用Matlab进行回归分析拟合计算。回归拟合程序如下:

clear
clc
% 读入人口数据(1971-2000年)
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=年份-1970)
T=[1    2   3   4   5   6   7   8   9   10  11  12  13  14  15  16  17  18  19  20  21  22  23  24  25  26  27  28  29  30]
% 线性化处理
for t=1:30
    x(t)=exp(-t);
    y(t)=1/Y(t);
end
% 计算,并输出回归系数B,即计算回归方程 y'=a+bx' 中的a和b的值
c=zeros(30,1)+1;
X=[c,x'];%相当于30个方程组,求解a和b 的值.
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*s';
% 回归误差平方和Q
Q=w*w';
% 计算回归平方和U
U=S-Q;
% 计算,并输出F检验值
F=28*U/Q
% 计算非线性回归模型的拟合值
for j=1:30,
    Y(j)=1/(B(1,1)+B(2,1)*exp(-j));
end
% 输出非线性回归模型的拟合曲线(Logisic曲线)
plot(T,Y,'r*')

  运行结果:

这里写图片描述

  当数据较多时,从excel中读取数据:

clear
clc
Y=xlsread('D:\file.xlsx',1,'B1:B30');%读取数据
Y=Y';
T=xlsread('D:\file.xlsx',1,'A1:A30');%读取数据
T=T';
for t=1:30,
    x(t)=exp(-t);
    y(t)=1/Y(t);
end
c=zeros(30,1)+1;
X=[c,x'];
B=inv(X'*X)*X'*y'%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=28*U/Q
for j=1:30,
    Y(j)=1/(B(1,1)+B(2,1)*exp(-j));
end
plot(T,Y)

  运行结果:

这里写图片描述

相关阅读

失踪人口

好像有将近四个月没有写blog了啊…… 终于有了去年学长们的体验:抉择,文化课与竞赛之间的抉择 高一下这个学期感觉过得浑浑噩噩的,整

从风流到下流,杜蕾斯新文案为何被人口诛笔伐?

近日,杜蕾斯又一次玩起了social营销,也一如既往的上了热搜,但与之前出众 的营销模板级别表现不同,此次与喜茶的social营销却成为了反

数学建模-马尔萨斯人口问题

目录 问题的提出 马尔萨斯人口模型 逻辑回归模型 1.问题的提出 马尔萨斯人口问题是对群体增长的预测,由马尔萨斯提出,同时他

女性占理财人口大多数?人人贷、极光金融、余额宝、PPmo

自古以来女性对于独立平等的追求从未止步,到了近代新中国成立以后,压抑了千年的女性更是得到了根本上的解放。毛主席曾说过:“

中国人口增长的数学模型(for数学建模)

摘要 本文旨在建立数学模型描述并预测中国人口变化情况, 并努力全面合 理地分析人口老龄化、城乡人口分布、男女比例等现实因素对

分享到:

栏目导航

推荐阅读

热门阅读