Hi If you can not share information you need to solve your problems yourself.
you can trace code by some print statements sn<-(S-n);snfact<-gamma(sn); print(sn) or use ?debug as Sarah pointed out, n is probably greater than 100 and in that case gamma(sn) results in NaN. Regards Petr > -----Original Message----- > From: [email protected] [mailto:r-help-bounces@r- > project.org] On Behalf Of Sahana Srinivasan > Sent: Tuesday, March 26, 2013 4:52 PM > To: Berend Hasselman > Cc: [email protected] > Subject: Re: [R] NaNS Error Message > > Hi, sorry I can't provide the reproducible code - the formula is > currently being worked on for a research paper so I can't really give > out details in that regard. > That being said, k is initialized to 1 at the beginning of the loop. n > has various values (whole numbers, 0 or greater, no upper limit). > > > > On Tue, Mar 26, 2013 at 3:41 PM, Berend Hasselman <[email protected]> > wrote: > > > > > On 26-03-2013, at 16:25, Sahana Srinivasan > > <[email protected]> > > wrote: > > > > > Hi, > > > I'm using R to do a series of calculation and I have gotten several > > > warnings that say "NaNS produced". Whatever I could read on line > > > gives me an idea that this warning is produced when the number is > > > use is a > > negative > > > log or otherwise mathematically problematic. > > > I'm getting this error while using factorial() and gamma () on > > > strictly positive numbers (always greater than zero). > > > Here is a snippet of my code: > > > k goes from 1 to a positive limit. > > > S is always 100. > > > Only positive values of n are allowed into the loop. > > > > > > if(n>0) > > > { > > > while(k<=lim) > > > { > > > > > > sn<-(S-n);snfact<-gamma(sn); > > > sn2<-(2-n+S);sn2gam<-gamma(sn2); > > > > > > num<-(ngam*sn2gam); > > > > > > > > > nk2<-(2+k-(2*n)+S); > > > nk2gam<-gamma(nk2); > > > den<-(k*nk2gam); > > > prob<-(num/den); > > > > > > sum<-(as.numeric((k*prob))+sum); > > > > > > k<-k+1; > > > } > > > } > > > > > > The error message received for every instance of this loop is : > > > In gamma(sn) : NaNs produced > > > In gamma(sn2) : NaNs produced > > > In gamma(nk2) : NaNs produced > > > > > > > This not reproducible code. > > Where is ngam? > > Where is k set to 1? > > What value does n have? > > > > Berend > > > > > > [[alternative HTML version deleted]] > > ______________________________________________ > [email protected] mailing list > https://stat.ethz.ch/mailman/listinfo/r-help > PLEASE do read the posting guide http://www.R-project.org/posting- > guide.html > and provide commented, minimal, self-contained, reproducible code. ______________________________________________ [email protected] mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.

