建立一元线性回归模型|Matlab实例分析
程序员文章站
2024-03-21 08:10:58
...
1.收集到港澳台近15年的数据(表格1),数据来源具体来源:http://data.stats.gov.cn/easyquery.htm?cn=E0110
表格 1
时间 |
香港 |
澳门 |
2000年 |
6665000 |
431867 |
2001年 |
6714300 |
438088 |
2002年 |
6744100 |
444178 |
2003年 |
6730800 |
450754 |
2004年 |
6783500 |
458579 |
2005年 |
6813200 |
481390 |
2006年 |
6857100 |
479728 |
2007年 |
6925900 |
493022 |
2008年 |
6977700 |
507274 |
2009年 |
7003700 |
521405 |
2010年 |
7024200 |
543656 |
2011年 |
7071600 |
546682 |
2012年 |
7154600 |
557763 |
2013年 |
7187500 |
568056 |
2014年 |
7241700 |
577914 |
2015年 |
7305700 |
587606 |
2.利用表格1中第一列和第二列做一元回归分析
利用matlab编译程序如下:
clear;clc;
load('a.mat');%导入数据
n=length(a);
X=a(:,1);%提取自变量
X1=[ones(n,1),X];%自变量矩阵前加一列1
Y=a(:,2);%提取因变量
[b,bint,r,rint,stats]=regress(Y,X1);%多指标
%输出向量b,bint为回归系数估计值和它们的置信区间,r,rint为残差及其置信区间,
%stats是用于检验回归模型的统计量,有三个量,
%第一个是决定系数R的平方,第二个是F统计量值,第三个是与F统计量值对应的概率P
Z=b(1)+b(2)*X;%回归方程
plot(X,Y,'rp',X,Z,'b');
title('原始数据散点图与回归线');
set(0,'defaultfigurecolor','w');
得到结果如下:
- 回归方程:y=42237.6470588214-77842038.9705839x(下图1)
- bint为回归系数估计值的置信区间:[ -84122051.1272290,39109.3802594004]和[ -71562026.8139388,45365.9138582424]
- r,rint为残差及其置信区间:(下图2)
- 决定系数R的平方:0.9836(越接近1拟合程度越高)
- F统计量值:838.610071047130
- F统计量值对应的概率P:6.79068295826737e-14<<0.05,即回归方程显著。
上一篇: 基于三层交换机的MSTP+VRRP+NAT的部署实例
下一篇: MySQL主从复制