用matlab拟合Sigmoid函数 30
数据x=[410002950005520008100001071000133600016050001876000215000024250002700000];y=[406...
数据x=[41000 295000 552000 810000 1071000 1336000 1605000 1876000 2150000 2425000 2700000]; y=[4060 4020 4050 4063 5350 16818 19017 19533 19710 20028 20037];,函数形式a(y+b)=1/(1+exp(-c(x+d)),新手求大神指点……要求画图,求matlab代码:hug:
展开
2个回答
展开全部
参考代码:
);
c = [1/1.6e4 -0.4e4 1e-5 -1.25e6];
c = lsqcurvefit(f,c,x,y);
num2str(c)
plot(x,y,'ro',x,f(c,x),'.-')
拟合结果(依次为abcd):
6.3964932298e-005 -4040.2074568 1.4316534415e-005 -1229529.3708
图中,红色为原始数据,蓝色线为拟合曲线。
说明
1、拟合公式变形为
y=1/a/xp(-c(x+d))-b
2、初值需要慎重选择,不然可能无法得到理想的结果。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |