看板 R_Language 關於我們 聯絡資訊
根據你的推文,你的迴歸式是 y = x ^ b + error 那直接這樣做就好了: mod <- nls(y ~ x ^ b1, data = dat, start = list(b1 = 2)) summary(mod) 其中 dat 是一個 data frame; x 和 y 是 dat 裡的二個變數; b1 是待估計的參數,不用事先定義,直接寫進 nls() 裡就可以。 ※ 引述《pornstar (迪克)》之銘言: : 程式諮詢(我想用R 做某件事情,但是我不知道要怎麼用R 寫出來) : : [軟體熟悉度]: : 入門(寫過其他程式,只是對語法不熟悉) : [問題敘述]: : 各位大大好~~ : 我想在資料中加入一個擬合曲線看看它們之間的關係 : 我的資料只是簡單的兩列數據 資料型態是data frame : 我用nls這個函式來做擬合 : [程式範例]: : 我讀入的資料名稱是Fit 型態是data frame : 錯誤的是: Curve<-nls(Fit[2]~I(Fit[1]^power),data=Fit[]) : 跑出以下的錯誤訊息 : : Error in model.frame.default(formula = ~Fit + power, data = Fit) : : invalid type (list) for variable 'Fit' : In addition: Warning messages: : 1: In min(x) : no non-missing arguments to min; returning Inf : 2: In max(x) : no non-missing arguments to max; returning -Inf : 是因為F[1],F[2]沒辦法取出來做運算嗎?? : 我預期之後再用summary(Curve)就可以看到擬合曲線的公式 : 新手發問~ 先感謝各位大大的回答~!! -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 122.117.37.172 ※ 文章網址: http://www.ptt.cc/bbs/R_Language/M.1411840813.A.DDA.html
pornstar: 感謝~~ 但是試過後仍然跑出一樣的錯誤訊息資料型態無論 09/28 12:37
pornstar: 是data frame或list都一樣錯 我是用read.csv的方式讀進 09/28 12:38
pornstar: excel的資料 不知道跟這是否有關? 或是nls的涵式需要再 09/28 12:39
pornstar: 另外找甚麼package?? 09/28 12:39
pornstar: 或是我把數據放進x,y的方式有誤?(上篇回文 但是x,y的確 09/28 12:42
pornstar: 也有顯示出資料..) 09/28 12:43
andrew43: 那可能是統計上的問題而不是R的問題了。 09/28 20:01
andrew43: 你可以先試著把 nls() 裡的參數看清楚,了解不同的演算 09/28 20:02
andrew43: 方式來解決問題。 09/28 20:02
pornstar: 好的 我在試試 09/29 22:00