2016-12-05 89 views
0

我有該數據的擬合曲線的問題:這條日誌數據如何擬合曲線?

enter image description here

接通x軸我們有一個關於風力強度(米/秒)的數據,關於y軸我們有日誌數據(漁獲) 。我裝了一個曲線(NLS模型,高斯曲線)只在數據而不logaritm,但是當我試圖在日誌數據,R告訴我:

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是估計的參數,和

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

上沒有記錄數據的擬合曲線是:

enter image description here#紅色

我作爲平均點在日誌數據上的pected結果是一個類似的擬合曲線,具有不同的參數值,問題是,我必須使用哪種模型?

的數據是:

1.1  1.4  1.6  1.7  1.8  1.9   2  2.1  2.2  2.3  2.4  2.5 
-3.0951726  NaN -2.5337439 -3.6184583 -3.2161971 -2.4405031 -1.4349350 -1.5676554 -1.0594076 -0.3290359 -1.2241878 -0.6336298 
     2.6  2.7  2.8  2.9   3  3.1  3.2  3.3  3.4  3.5  3.6  3.7 
-1.3863366 -1.4221593 -1.4961145 -1.2632693 -2.5509134 -4.7270333 -2.4795247 -2.0024069 -4.5975918 -2.9954250 -3.2390678 -2.6339971 
     3.8  3.9   4  4.1  4.2  4.3  4.4  4.5  4.6   5 
-3.3419309 -3.5258236 -4.4962217 0.7027033 -3.6392906 -4.0426306 -1.0798462  NaN -3.0574602 -3.0498198 

隨着x值從1.1至5,下面的日誌數據。

+0

log(y)= log(0.21)-0.5 *(wind-2.45)^ 2/0.45^2 – Roland

+0

是的,但你想象你現在沒有參數(來自第一個擬合曲線),怎麼可以估計它在這個日誌數據? poly,lm,glm還是nls?可能是stackexchange的問題,如果是,我很抱歉。 – skylobo

+0

首先,您需要解釋爲什麼要在對數級上進行擬合,因爲這對誤差模型有影響。 – Roland

回答

1

問題是模型本身。該模型的RHS可以寫成:

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

所以k和最右邊的因素起到同樣的作用。參數不是唯一確定的。

修復這個省略k或模型的最後一個因素。