matlab进行回归分析 怎样用MATLAB进行回归分析
matlab进行回归分析
regress可以解决多元线性回归,非线性回归转换后也可以解
polyfit是一元的多项式回归,[p,S]=polyfit(x,y,2)
中的2是多项式中自变量的最高次数,即y=a b*x c*x^2
怎样用MATLAB进行回归分析
X=[1 1 4 6 8 11 14 17 21]
Y=[2.49 3.30 3.68 12.20 27.04 61.10 108.80 170.90 275.50]
X=[ones(9,1), X]
[b,bint,r,rint,stats]= regress(Y,X)
输出向量b,bint为回归系数估计值和它们的置信区间,r,rint为残差及其置信区间,stats是用于检验回归模型的统计量,有三个数值,第一个是R2,其中R是相关系数,第二个是F统计量值,第三个是与统计量F对应的概率P,当P<α时拒绝H0,回归模型成立。
利用matlab做回归分析,
利用matlab做回归分析的步骤:
x1=[]
x2=[]
x3=[]
X=[ones(length(x1) x1 x2 x3]
[b,bint,r,rint,stats]=regress(y,X)
a=b(1),c=b(3),c=b(4),b=(2)
这样就可以得到y=a bx1 cx2 dx3的表达式的系数。
一元线性回归怎么用matlab编程
使用regress命令
多元线性回归——用最小二乘估计法
B = REGRESS(Y,X) ,
返回值为线性模型Y = X*B的回归系数向量
X ,n-by-p 矩阵,行对应于观测值,列对应于预测变量
Y ,n-by-1 向量,观测值的响应(即因变量,译者注)
[B,BINT] = REGRESS(Y,X) returns a matrix BINT of 95% confidence
intervals for B.
BINT,B的95%的置信区间矩阵
[B,BINT,R] = REGRESS(Y,X) returns a vector R of residuals.
R,残差向量
rcoplot(r,rint)
这是个画残差的函数,红色的表示超出期望值的数据
圆圈代表残差的值,竖线代表置信区间的范围
在MATLAB中怎么做啊?一元回归分析的内容
X和Y的长度不等啊,X是16个数,Y是8个数。且X的前8个都是1。如果用X的后8个数与Y回归,则:
clearclc
X=[1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.5 2.0 3.0 4.5 7.5 9.1 10.5 12.0]
Y=[5.6 6.6 7.2 7.8 10.1 10.8 13.5 16.5]
p=polyfit(X(:,2),Y,1)
xx=linspace(1.5,12,30)
yy=polyval(p,xx)
plot(X(:,2),Y,o,xx,yy)
y=poly2sym(p,x)
运行结果:
p =
0.8950 4.15
y = 0.8950*x 4.1575
matlab 画图 多元线性回归分析
Matlab中统计工具箱用命令regress实现多元线性回归,用的方法是最小二乘法,基本用法是:
b=regress(Y,X)
Y,X是因变量和自变量,b为回归系数的估计值。
当然,也可以让结果更详细,这个你可以自己查看帮助文档  doc  regress
这里使用:
[b,bint,r,rint,stats]=regress(Y,X)
其中,bint为回归系数的置信区间,r,rint为残差及其置信区间,stats为计算回归模型的统计量。
所以,设房屋销售均价为Y,其余四个变量分别为X1,X2,X3,X则代码如下:
 clc
 clear
 x=[]
 Y=[]
 X=[ones(length(x),1),x]
 [b,bint,r,rint,stats]=regress(Y,X,0.05)
X,Y的数据你填进去就可以了。