MATLAB一元线性回归方程的计算和检验

一、实验名称
一元线性回归方程的计算检验
二、实验目的
(1)
掌握多种方法求解一元线性回归方程并检验; (2)
掌握曲线拟合的最小二乘法; (3)
培养编程与上机调试能力; (4)
卡盘扳手熟悉Matlab6.5.1软件环境.
三、实验要求
(1) 从键盘输入一组数据(x i ,y i ),i=1,2,…n 。
(2) 计算一元线性回归方程y=ax+b 的系数a 和b ,用两种方法计算: 一是公式:x a y b x x y y x x a i
i
聚乙烯亚胺i -=---=∑∑,)())((2
; 二是用最小二乘法的公式求出最小值点(a,b ),使
∑--=2)(min },(b ax y b a Q i i .
(3)  检验回归方程是否有效(用F 分布检验)。
(4)  把散列点(x i ,y i )和回归曲线y=ax+b 画在一个图上。
(5)  每种计算法都要有计算框图,且每种计算法都要编成一个自定义函数。
五、程序及其运行结果
程序:
function yiyuanhuigui
clc;
disp('从键盘输入一组数据:');
x=input('X的数(以向量形式输入):');
y=input('Y的数(以向量形式输入):');
disp('一元线性回归方程的计算和检验:');
disp('1、公式法');
disp('2、最小二乘法');
disp('3、检验并画图');
disp('0、退出');
global a0 b0;r51
while 3
num=input('选择求解一元回归方程的方法:');
switch num
case 1
[a0,b0]=huigui(x,y)
case 2
[a0,b0]=zxec(x,y)
case 3
break;
case 0
return;
otherwise
disp('输入错误,请重新输入!');
end
end
X=x';Y=y';
安云霁X=[ones(size(X)),X];alpha=0.5;
%输出向量b,bint为回归系数估计值和它们的置信区间;
%r1,rint为残差及其置信区间,stats是用于检验回归模型的统计量,第一个是R^2,其中R %是相关系数,第二个是F统计量值,第三个是与统计量F对应的概率P,第四个是估计误差方差
[b,bint,e,rint,stats]=regress(Y,X)
if stats(3)<alpha %当P<α时拒绝H0,回归模型成立disp('一元回归方程有效!');
end
n=[min(x):0.1:max(x)];
f=a0*n+b0;
plot(x,y,'b.',n,f,'r'),grid on,hold on; %画出散列点和一元线性回归图像
xlabel('x');ylabel('y');legend('散列点','一元线性回归图像');
title('散列点和一元线性回归图像');
end
%*****************************公式法
function [a0,b0]=huigui(x,y)
n=length(x);
x1=0;y1=0;
for i=1:n
x1=x1+x(i);
y1=y1+y(i);
end
x0=x1/n; %求得平均
y0=y1/n;
a1=0;a2=0;
for j=1:n
a1=a1+(x(j)-x0)*(y(j)-y0);
a2=a2+(x(j)-x0)*(x(j)-x0);
end
电视原理课后答案a0=a1/a2;
b0=y0-a0*x0;
x2=min(x):0.05:max(x);
y2=a0*x2+b0;
end
%***************************** 最小二乘法function [a0,b0]=zxec(x,y)
m=length(x);
R=[x' ones(m,1)];a=R\y';
a0=a(1);b0=a(2);
end黄建始

本文发布于:2024-09-21 14:48:37,感谢您对本站的认可!

本文链接:https://www.17tex.com/xueshu/14326.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:线性   回归   回归方程   检验   计算
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议