Re: [R] how to avoid NaN in optim()

2010-10-01 Thread Ravi Varadhan
i Varadhan Cc: arindam fadikar; r-help@r-project.org Subject: Re: [R] how to avoid NaN in optim() Here is how you do it: library(BB) Amat <- matrix(c(1,0,0,1,-1,-1), 3, 2, byrow=TRUE) b <- c(0, 0, -1) p0 <- c(0.5, 0.4) spg(p0, lik ( 176,182 , 60 ,17) , project="projectLinear&quo

Re: [R] how to avoid NaN in optim()

2010-09-30 Thread Berend Hasselman
arindam fadikar wrote: > > > loglik <- function(par) > { > p=par[1] > q=par[2] > r <- 1 - p - q > if (c(p,q,r) > rep(0,3) && c(p,q,r) < rep(1,3) ) > { > -(2 * nO * log (r) + nA * log (p^2 + 2 * p * r) > + nB * log (q^2 + 2 * q * r) >

Re: [R] how to avoid NaN in optim()

2010-09-30 Thread Joshua Wiley
On Thu, Sep 30, 2010 at 12:04 PM, arindam fadikar wrote: > thanks Ravi yes , we were getiing the correct results but we thought > there should be a way to avoid those NaN values ... and now we are done > the if condition was written wrongly there ... instead of that if we do > >  p > 0 && q >

Re: [R] how to avoid NaN in optim()

2010-09-30 Thread Ravi Varadhan
er 30, 2010 3:04 pm Subject: Re: [R] how to avoid NaN in optim() To: Ravi Varadhan Cc: arindam fadikar , r-help@r-project.org > You also need the constrain that par[1] + par[2] < 1 in order to avoid > NaNs. > > You can do this using the `projectLinear' argument in `spg'

Re: [R] how to avoid NaN in optim()

2010-09-30 Thread arindam fadikar
thanks Ravi yes , we were getiing the correct results but we thought there should be a way to avoid those NaN values ... and now we are done the if condition was written wrongly there ... instead of that if we do p > 0 && q > 0 && r > 0 && p < 1 && q < 1 && r < 1 its perfectly fine .. but i

Re: [R] how to avoid NaN in optim()

2010-09-30 Thread Ravi Varadhan
, Division of Geriatric Medicine and Gerontology School of Medicine Johns Hopkins University Ph. (410) 502-2619 email: rvarad...@jhmi.edu - Original Message - From: Ravi Varadhan Date: Thursday, September 30, 2010 2:54 pm Subject: Re: [R] how to avoid NaN in optim() To: arindam fadikar

Re: [R] how to avoid NaN in optim()

2010-09-30 Thread Ravi Varadhan
I forgot to mention: You actually got correct results with using optim and `CG'. The warning messages were just telling you that there were some log(negative number) operations during the iterative process. Ravi. Ravi Var

Re: [R] how to avoid NaN in optim()

2010-09-30 Thread Ravi Varadhan
Change the `else NA' to `else Inf' in your loglik function and then run the following: library(BB) p0 <- runif(2) spg(p0, lik (176,182 , 60 ,17) , lower=0, upper=1) This will give you correct results. Ravi. Ravi Varadh