Я программирую функцию логарифмического правдоподобия, используя нормальное распределение (пробит) для двоичной независимой переменной. При использовании optim я получаю сообщение об ошибке:
$ Ошибка в optim (startvalues, probitll, gr = grad, Y = Ydoc, X =
Xbiais,: начальное значение в 'vmmin' не является конечным $
probitll<-function( par, X, Y){
Y<-as.matrix(Y)
X<-as.matrix(X)
K<-ncol(X)
b<-matrix(1:K, ncol = 1)
R<-as.vector(dnorm(X%*%b))
-sum(Y*log(R)+(1-Y)*log(1-R))
}
grad<-function(SV, X, Y){
X<-as.matrix(X)
Y<-as.matrix(Y)
K<-ncol(X)
b<-matrix(1:K, ncol = 1)
R<-as.vector(dnorm(X%*%b))
apply(R*X, 2, sum)
}
startvalues<-as.vector(modeltestMCO[,1])
resultprobit<-optim( startvalues, probitll, gr= grad, Y=Ydoc, X=Xbiais, method="BFGS", hessian=TRUE)