[R] Errors with maxNR: NA in gradient
Emma MONTARSOLO
emsolo at hotmail.fr
Sun Dec 27 16:49:56 CET 2015
Hi !
I use maxNR function (from maxLik package) to estimate parameters via maximum likelihood and Newton–Raphson method.
Context :
I have a variable Y which follows a Gumbel distribution of parameters Beta1X1 + Beta2X2 (location parameter) and sigma (scale parameter).
I have to estimate sigma, beta1 and beta2
The following errors appear when I run maxNR :
> algo=maxNR(loglikelihood, start=c(sigma:8.686603,beta1=-4.976215,beta2=7.313875))
Iteration 1
Parameter:
beta1 beta2
4.251275 -249.985063 5.376905
beta1 beta2
NaN NaN NaN
Error in maxNRCompute(fn = function (theta, fnOrig, gradOrig = NULL, hessOrig = NULL, :
NA in gradient
In addition: There were 15 warnings (use warnings() to see them)
> warnings()
Messages d'avis :
1: In log(sigma) : NaNs produced
2: In log(sigma) : NaNs produced
3: In log(sigma) : NaNs produced
4: In log(sigma) : NaNs produced
5: In log(sigma) : NaNs produced
6: In log(sigma) : NaNs produced
7: In log(sigma) : NaNs produced
8: In log(sigma) : NaNs produced
9: In log(sigma) : NaNs produced
10: In log(sigma) : NaNs produced
11: In log(sigma) : NaNs produced
12: In log(sigma) : NaNs produced
13: In log(sigma) : NaNs produced
14: In log(sigma) : NaNs produced
15: In log(sigma) : NaNs produced
My code is the following :
n=length(data_reg$y)
loglikelihood<-function(parameters)
{
sigma<-parameters[1]
beta1<-parameters[2]
beta2<-parameters[3]
Z=(data_reg$y-(beta1*data_reg$x1)-(beta2*data_reg$x2))/sigma
ll=-(n*log(sigma))+sum(Z+exp(-Z))
ll
}
algo=maxNR(loglikelihood, start=c(sigma:8.686603,beta1=-4.976215,beta2=7.313875))
I use results from a previous estimation method as starting values.
Thanks for your help.
EM
[[alternative HTML version deleted]]
More information about the R-help
mailing list