MATLAB中数值拟合的种种办法

首先是大名鼎鼎的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回归,比如预测未来...

开发时间    单位规模       市场份额    市场反响    预测值
-68.8000&nb

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值