[問題] 矩陣的範圍不能是負值

看板R_Language作者 (廢物)時間10年前 (2014/02/27 16:21), 編輯推噓0(007)
留言7則, 2人參與, 最新討論串1/1
[問題類型]: 程式諮詢(我想用R 做某件事情,但是我不知道要怎麼用R 寫出來) [軟體熟悉度]: 入門(寫過其他程式,只是對語法不熟悉) [問題敘述]: 矩陣的範圍不能是負值 [程式範例]: 想找出一個scalar function的optimal value所以用了optim這個function~ 目標函式是個向量化函式~ 也就是說給一個n x k的matrix會吐出n x 1的vector 有丟過一些值進去算過~ 都有給出想要的結果~ 但不知道為什麼~ 一丟進optim裡馬上就掛了~ 跳出"錯誤在matrix(rep(mu_x, length(x)), nrow = s) : 矩陣的範圍不能是負值"~ 附上程式碼如下: http://nopaste.info/e864a2b39d.html 本來這是跑得動的~ 但是因為後來加了幾個變數(sig_v, sig_x跟sig_epo)必須是正的~ 在負數上的函數值要為0(因為函數統一回傳log值,所以在code中是指定為-Inf)~ ind_vs那幾行程式碼之後就出問題了.... 謝謝大家 [關鍵字]: 矩陣 範圍不能是負值 -- -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.112.4.182 ※ 編輯: Dboy 來自: 140.112.4.182 (02/27 16:36)

02/27 16:54, , 1F
剛剛複製貼上沒弄好~Objective_Fiction(theta,...後面有些切
02/27 16:54, 1F

02/27 16:55, , 2F
到~簡單的說都是一些係數~theta才是我要optimize的對象~
02/27 16:55, 2F

02/27 23:21, , 3F
?constrOptim
02/27 23:21, 3F

02/27 23:23, , 4F
或做變數變換改成最佳化 log(sig_v)
02/27 23:23, 4F

02/28 00:37, , 5F
會用optim其實是因為跑完後要丟另外一個package~裡面它是用
02/28 00:37, 5F

02/28 00:38, , 6F
optim在做最佳化~所以就算用constrOptim跑得出來~後面還是會
02/28 00:38, 6F

02/28 00:38, , 7F
出事....我只是不懂怎樣會出現"矩陣範圍不能是負值"這種error
02/28 00:38, 7F
文章代碼(AID): #1J3lMGFd (R_Language)
文章代碼(AID): #1J3lMGFd (R_Language)