0
我試圖在R中使用optimx函數,但不斷收到錯誤消息: optimx.check錯誤(par,optcfg $ ufn,optcfg $ ugr,optcfg $ uhess,lower,: 在初始參數R中的優化函數
我已經看過另一個計算器問題R- Optimx for exponential function with 2 parameters - cannot evaluate function at initial parameter values
但解決方案並沒有爲我工作無法計算功能
這裏是我的測試數據:
t <- seq(from=1,to=60,by=1)
len <- 100*(1-exp(-0.2*(t-0)))
t.data<-data.frame(t,len)
在optimx功能下面
Age1 <- 1 #### a young age
Age2 <- 50 #### an old age
功能的功能
p <- as.vector(c(30,110,0.3,1.0))
年齡標準桿個
起始值被最小化
schnute_richards <- function(p,data) # which are Len1,Len2,K,R
{
zero <- p[1]^p[4] # Len1^R
one <- p[2]^p[4]-p[1]^p[4] # (Len2^R-Len1^R)
two <- 1-exp(-p[3]*(data$t-Age1)) # (1-EXP(-K*(ObsAge-Age1)))
three <- 1-exp(-p[3]*(Age2-Age1)) # (1-EXP(-K*(Age2-Age1)))
pred <- (zero + one*(two/three))^(1/p[4]) # final equation
sum((data$len-pred)^2)
}
optimx代碼
temp <-optimx(p,function (x) schnute_richards(x[1],x[2]))
我試過這段代碼的其他版本,但是我得到了同樣的錯誤信息。這個代碼被用在我之前提到的另一個stackoverflow消息中,那就是解決方案。
感謝您的任何幫助。