Re: [問題] 簡單的新手小問題

看板R_Language作者 (討厭有好心推文後刪文者)時間9年前 (2014/09/28 02:00), 編輯推噓1(109)
留言10則, 2人參與, 最新討論串3/3 (看更多)
根據你的推文,你的迴歸式是 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

09/28 12:37, , 1F
感謝~~ 但是試過後仍然跑出一樣的錯誤訊息資料型態無論
09/28 12:37, 1F

09/28 12:38, , 2F
是data frame或list都一樣錯 我是用read.csv的方式讀進
09/28 12:38, 2F

09/28 12:39, , 3F
excel的資料 不知道跟這是否有關? 或是nls的涵式需要再
09/28 12:39, 3F

09/28 12:39, , 4F
另外找甚麼package??
09/28 12:39, 4F

09/28 12:42, , 5F
或是我把數據放進x,y的方式有誤?(上篇回文 但是x,y的確
09/28 12:42, 5F

09/28 12:43, , 6F
也有顯示出資料..)
09/28 12:43, 6F

09/28 20:01, , 7F
那可能是統計上的問題而不是R的問題了。
09/28 20:01, 7F

09/28 20:02, , 8F
你可以先試著把 nls() 裡的參數看清楚,了解不同的演算
09/28 20:02, 8F

09/28 20:02, , 9F
方式來解決問題。
09/28 20:02, 9F

09/29 22:00, , 10F
好的 我在試試
09/29 22:00, 10F
文章代碼(AID): #1K9lijtQ (R_Language)
文章代碼(AID): #1K9lijtQ (R_Language)