我是R(第一次使用它)的新手。我正在按照本教程http://www.walkingrandomly.com/?p=5254試圖繪製曲線並發現最適合我的數據的函數。到目前爲止,我已經tryed:R中的非線性最小二乘曲線擬合
> xdata = c(1 ,5, 10, 20, 100)
> ydata = c(23.83333333, 210.3666667, 545.3666667, 1756.866667, 38595.7)
> plot(xdata,ydata)
所以我得到這樣的:
然後我嘗試:
> p1 = 1
> p2 = 0.2
> fit = nls(ydata ~ xdata^2, start=list(p1=p1,p2=p2))
而且我得到這個錯誤:
Error in nlsModel(formula, mf, start, wts) :
singular gradient matrix at initial parameter estimates
我在做什麼NG? 謝謝
如何繪製曲線? – fredcrs 2014-09-25 19:47:15
繪圖是一個完全獨立的問題。但是如果你有一個合適的模型('fit'或'fit2'),你可以使用'xs <-seq(min(xdata),max(xdata),length.out = 100);情節(XDATA,YDATA);行(xs,predict(fit,data.frame(xdata = xs)))'。 – MrFlick 2014-09-25 19:51:20
擬合值已經在擬合對象中:'fit(fit)'或'fit $ m $ fitted'。如果您提供的是新數據參數,則只需要使用預測。 – 2014-09-25 20:01:22