[R] NaNS Error Message

Blaser Nello nblaser at ispm.unibe.ch
Tue Mar 26 16:38:05 CET 2013


Only positive values of n are allowed into the loop... 
More importantly, is n ever larger than 52??? Because that results in nk2<0 (for k=1) and undefined gamma(nk2). Same goes for sn, if n>100. 
Next time you may also want to write a reproducible example!

-----Original Message-----
From: r-help-bounces at r-project.org [mailto:r-help-bounces at r-project.org] On Behalf Of Sahana Srinivasan
Sent: Dienstag, 26. März 2013 16:25
To: r-help at r-project.org
Subject: [R] NaNS Error Message

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


Where am I going wrong?
Thanks for your help :)

	[[alternative HTML version deleted]]

______________________________________________
R-help at r-project.org 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.



More information about the R-help mailing list