Matlab 解决人口数据的拟合 年份 1960 1961 1962 1963 1964 1965

发布时间:2021-02-25 06:34:37

Matlab 解决人口数据的拟合 年份 1960 1961 1962 1963 1964 1965 1966 1967 1968 人口 29.72 30.61 31.51 32.13 32.34 32.85 33.56 34.20 34.83 (1)请你仔细分析数据,绘出数据散布图并选择合适的函数形式对数据进行拟合; (2)用你的经验回归模型试计算:以1960年为基准,人口增长一倍需要多少年?世界

网友回答

clear;clc
%这是一个一元线性回归问题,用matlab编写如下程序:
x=[1960,1961,1962,1963,1964,1965,1966,1967,1968]';
y=[29.72,30.61,31.51,32.13,32.34,32.85,33.56,34.20,34.83]';
subplot(221)
plot(x,y) ;
%假设模型 y=a0+a1*x+e;
x=[ones(9,1),x];
a=x\y%a(1)=a0,a(2)=a1.
X=1960:2222;
Y=a(1)+a(2)*X;
subplot(222)
plot(X,Y);
%2003开始   人口增长一倍  43年   2077 年超过一百亿
%2002年的世界人口数 55.2357亿
Matlab 解决人口数据的拟合 年份 1960 1961 1962 1963 1964 1965 1966 1967 1968 人口 29.72 30.61 31.51 32.13 32.34 32.85 33.56 34.20 34.83 (1)请你仔细分析数据,绘出数据散布图并选择合适的函数形式对数据进行拟合; (2)用你的经验回归模型试计算:以1960年为基准,人口增长一倍需要多少年?世界(图1)
======以下答案可供参考======
供参考答案1:
这是一个一元线性回归问题,用matlab编写如下程序:
x=[1960,1961,1962,1963,1964,1965,1966,1967,1968];
y=[29.72,30.61,31.51,32.13,32.34,32.85,33.56,34.20,34.83];
plot(x,y,'o')
上述程序可以让你通过画散点图的方式粗略了解年份x与人口y之间的关系。
下一步,在粗略了解的基础上,合理假设x与y之间具有如下关系:
y=ax+b+e
其中e是一个服从标准正态分布的随机变量,则可以通过最小二乘法估计出参数a和b的值,从而明确年份与人口之间的关系,并可用实际数据来检验。
有关最小二乘法的论述见于《概率论与数理统计》,属于该门课程的经典内容。(祝你好运!^_^)
以上问题属网友观点,不代表本站立场,仅供参考!