1
我是R新手,遇到優化問題。R中的優化
d <- c(0, 9.017, -9.017, 0, 9.017, 0, -8.579, -7.849, 0, 0, -7.849,
-9.017, 0, -7.849, -7.849, 0, 0, 0, 8.579, 1.168, 8.579, 8.579,
-7.849, 0.729, 8.579, 9.017, 0, -0.438)
x <- c(0, 1, 0, 0, 1, 0, 1, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 1, 1, 0,
1, 1, 0, 1, 1, 1, 0, 1)
log.like<-function (sigma){
theta = pnorm(d,mean=0,sd=sigma)
logl = sum(log((theta^x) * ((1-theta)^(1-x))))
-logl
}
optim(0,fn=log.like,method="L-BFGS-B",lower=0,upper=1)
它給了我下面的錯誤:
Error in optim(0, fn = log.like, method = "L-BFGS-B", lower = 0, upper = 1) :
L-BFGS-B needs finite values of 'fn'
這不是非常接近'glm(x〜d,family = binomial(link =「probit」))'...? –
我檢查過了,實際上'g1 < - glm(x〜d,family = binomial(link =「probit」)); 1/coef(g1)'將解決這個問題。 –