如何用matlab对这组数据曲线拟合?

x=[1970:2004];y=[46808,49416,53094,57237,56677,56198,59673,61826,64158,65220,63108,60... x = [1970:2004];
y = [46808,49416,53094,57237,56677,56198,59673,61826,64158,65220,63108,60944,59543,58779,59882,60087,61825,63104,64963,66902,66443,67061,67273,67372,68679,69995,71522,73292,73932,75826,76954,78105,78439,79892,82631];
就是这样一组数据,函数的形式为:y=a+b*cos(c*x+d)+e*exp(f*x);
我试图用nfitlin和cftool里面自定义的函数进行拟合,效果都非常不理想。
按书上给出的答案,函数的系数分别为:a=31950;b=1557;c=0.605;d=-3159.659;e=1.183e-16;f=0.02369。
有哪位大神能帮一下忙么?

我用的matlab版本是2013b,可以的话最好用这个版本的程序给我解答,我发现这个版本还是和别的版本的界面差别蛮大的。。。
展开
 我来答
lhmhz
高粉答主

2014-02-03 · 专注matlab等在各领域中的应用。
lhmhz
采纳数:7263 获赞数:17001

向TA提问 私信TA
展开全部

a =15019.08239,  b =  2345.431602,  c =0.5108014930,  d = -136.6872430, e =0.5309357832e-8, f =0.1503166632e-1

剩余平方和SSE:148234466.9758
相关系数R-square:0.94084
剩余标准差RMSE:2119.4229

 

按书上给出的答案,其

剩余平方和SSE:367174768.0736
相关系数R-square:0.85346
剩余标准差RMSE:3335.6421

这说明书上给出的答案给出的结果,并不是最优。

具体求解代码,见附件。

Sievers分析仪
2024-10-13 广告
是的。传统上,对于符合要求的内毒素检测,最终用户必须从标准内毒素库存瓶中构建至少一式两份三点标准曲线;必须有重复的阴性控制;每个样品和PPC必须一式两份。有了Sievers Eclipse内毒素检测仪,这些步骤可以通过使用预嵌入的内毒素标准... 点击进入详情页
本回答由Sievers分析仪提供
迂堂派
2014-02-04 · 知道合伙人软件行家
迂堂派
知道合伙人软件行家
采纳数:335 获赞数:1062
西南大学电子与通信工程专业。热爱 IT,喜欢阅读~

向TA提问 私信TA
展开全部

用这个函数的拟合效果比树上给出的答案效果要好:

f(x) =  a1*exp(-((x-b1)/c1)^2) + a2*exp(-((x-b2)/c2)^2)

拟合结果如下:

General model Gauss2:

     f(x) =  a1*exp(-((x-b1)/c1)^2) + a2*exp(-((x-b2)/c2)^2)

       where x is normalized by mean 1987 and std 10.25

Coefficients (with 95% confidence bounds):

       a1 =    8.28e+19  (-1.89e+23, 1.892e+23)

       b1 =       433.1  (-2.802e+04, 2.888e+04)

       c1 =        73.4  (-2340, 2487)

       a2 =        9194  (7087, 1.13e+04)

       b2 =     -0.9514  (-1.025, -0.8779)

       c2 =      0.4332  (0.2931, 0.5733)


Goodness of fit:

  SSE: 5.391e+07

  R-square: 0.9785

  Adjusted R-square: 0.9748

  RMSE: 1363


而直接将树上的拟合结果带进去,求得拟合优度为:

sse: 1.9653e+08

       rsquare: 0.9216

           dfe: 29

    adjrsquare: 0.9080

          rmse: 2.6032e+03

效果不如二项高斯分布~

本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
WM_THU
2014-02-04 · TA获得超过7164个赞
知道大有可为答主
回答量:4285
采纳率:80%
帮助的人:3892万
展开全部
  1. 你验证过答案吗?答案的效果很理想?

  2. 你的初始值怎么选的?尤其是cos项的频率如果初值设置不当就很难找到正解了。

  3. 观察一下数据,发现非常变态:x和y都离谱且不必要的大。所以先把x改成从0开始,y的偏置减小一下,比如均值归0。而且cos项是非常难以拟合的,可以先去掉,这样至少能先到一个结果。

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式