在matlab中拟合值,MATLAB中数值拟合的种种办法

本文介绍了如何在MATLAB中使用regress函数进行数值拟合,通过实例展示了二元线性拟合的过程,并利用该方法进行logistic回归,评估了预测效果。regress函数基于最小二乘法,适用于线性回归,而梯度下降法更适合更广泛的参数优化问题。
摘要由CSDN通过智能技术生成

首先是大名鼎鼎的regress

regress(Y,X,alpha)

其中alpha可省略,省略时为0.05.

简单来说,这里的y指的就是对应的函数值,注意是列向量(如果是行向量要转置),x是自变量的取值(每一列为一组),注意因为考虑常数项,所以要在原x前加上一列全为1

举个简单的例子:

m=[234 237 239 280 290]

x=[3.13 3.15 3.18 3.19 3.23]

y=[87.5 89.6 94.5 99.5 104.6]

做m=ax+by+c的二元拟合.

>> m=[234 237 239 280 290];

>> x=[3.13 3.15 3.18 3.19 3.23];

>> y=[87.5 89.6 94.5 99.5 104.6];

>> t=[ones(size(x,2),1),x',y'];%这里的size(x,2)代表求x向量的列数,注意一定要在前面加上一列全为1,t=[x1,x2,x3]若x1,x2,x3行数相等则表示着将这几行横着拼起来

>> b=regress(m',t)%原来m是行向量,转化为列向量可以得到一个向量存储c,a,b,最后把它打印出来。

>> [x,y]=meshgrid([-10:0.1:10]);

>> z=b(1)+x.*b(2)+y.*b(3);

>> surf(x,y,z);

接下来就可以用regress做一些logistic回归,比如预测未来...

开发时间    

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值