[R] NaNS Error Message

Berend Hasselman bhh at xs4all.nl
Tue Mar 26 16:41:06 CET 2013


On 26-03-2013, at 16:25, Sahana Srinivasan <sahanasrinivasan.91 at gmail.com> 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



More information about the R-help mailing list