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)请你仔细分析数据,绘出数据散布图并选择合适的函数形式对数据进行拟
来源:学生作业帮助网 编辑:六六作业网 时间:2024/12/27 00:29:27
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)请你仔细分析数据,绘出数据散布图并选择合适的函数形式对数据进行拟
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年为基准,人口增长一倍需要多少年?世界人口何时将达到100亿?
(3)用你的模型估计 2002年的世界人口数,请分析它与现在的实际人口数的差别的成因.
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)请你仔细分析数据,绘出数据散布图并选择合适的函数形式对数据进行拟
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编写如下程序:
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之间的关系...
全部展开
这是一个一元线性回归问题,用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的值,从而明确年份与人口之间的关系,并可用实际数据来检验。
有关最小二乘法的论述见于《概率论与数理统计》,属于该门课程的经典内容。(祝你好运!^_^)
收起