首页 > 编程知识 正文

简单线性回归分析,matlab线性回归方程

时间:2023-05-06 16:06:57 阅读:171232 作者:4659

Matlab实际上有多个可以实现回归分析的功能,如regress、polyfit、lsqcurvefit等。 这里简要总结polyfit函数的使用方法。

Matlab实际上有多个可以实现回归分析的功能,如regress、polyfit、lsqcurvefit等。 这里简要总结polyfit函数的使用方法。

polyfit函数基于最小二乘法,基本格式如下:

p=polyfit(x,y,n ) )。

([p,s]=polyfit(x,y,n ) )。

[p,s,mu]=polyfit(x,y,n ) ]

此处,各命令中的n为多项式拟合的次数,当n为1时,为一次拟合(在多数情况下,等价于一元线性回归)。 p为n 1维参数向量p(1),p )2) . 拟合后对应的多项式为p )1) x^np )2) x^ ) n-1 )…p ) n ) xp ) n 1 )。 s是包含r (系数矩阵的QR分解的上三角矩阵)、df )自由度)、normr )拟合误差平方和的算术平方根)的11规模的结构排列。

求出p后,需要建立拟合函数。 只需使用命令。

f=polyval(p,x ) ) ) ) ) )。

然后plot给出x和f就可以了。 此外,在许多情况下,回归分析时需要提供相关系数。 其实很简单。 可以使用命令。

r=corrcoef(x,y );

这样得到的r是相关系数矩阵,其中r [ 1,2 ]=r [ 2,1 ]是相关系数,其值介于[-1,1 ]之间,1表示最大的正相关,-1表示最大的负相关。 相关系数的绝对值越接近1,线性相关的性质越好,根据数据出图的函数-自变量图接近直线,拟合的直线接近出图。

另外,转载2个使用polyfit时的注意事项:

使用polyfit命令进行多项式拟合时,请注意向量x (此处以元素为参数)中不重复的元素数m和拟合阶数k必须满足m=k 1。 简要分析: k次拟合需要确定k 1的未知参数。 例如,1次拟合y=ax b需要确定a和b两个参数。 因此,至少需要k 1个方程式,所以至少需要k 1个不同的已知数对

2. polyfit只适合于形状为y=a [ k ] * x ^ ka [ k-1 ] * x ^ [ k-1 ]…. a [1] * xa [0]这样的完全一元多项式的数据拟合。

最后贴上简单拟合结果的图:

请阅读:

从Matlab和C/C联合编程的Matlab中调用C/C代码

二分类SVM方法Matlab的实现

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。