如何在这个日志数据上拟合曲线?

时间:2016-12-05 08:16:16

标签: r model curve-fitting nls

我对此数据的拟合曲线存在问题:

enter image description here

在x轴上我们有一个关于风强度(m / s)的数据,在y轴上我们有日志数据(鱼捕获)。我只在没有logaritm的数据上拟合了曲线(nls模型,高斯曲线),但是当我尝试使用日志数据时,R告诉我:

- name: Iterate over something
  with_subelements:
     - "{{ unit }}"
     - config
     - skip_missing: True

模型为:Error in nls(mean.w ~ k * exp(-1/2 * (x.wind - mu)^2/sigma^2), : singolar gradient ,其中mean.w ~ k * exp(-1/2 * (x.wind - mu)^2/sigma^2)是要估算的参数,

k,mu and sigma

非日志数据的拟合曲线是:

enter image description here#红色的平均值

我对日志数据的预期结果是一个类似的拟合曲线,参数值不同,问题是,我必须使用哪种模型?

数据是:

mean.w # is y axes (log fish catch) 
x.wind # is x axes wind intensity 

x值从1.1到5,低于日志数据。

1 个答案:

答案 0 :(得分:1)

问题在于模型本身。该模型的RHS可以写成:

k * exp(-1/2 * x.wind / sigma^2) * exp(1/2 * mu /sigma^2)

所以k和最右边的因素扮演同样的角色。参数不是唯一确定的。

要修复此省略k或模型中的最后一个因素。