[Numpy-discussion] new warning in 1.5.0: divide by zero encountered in log

John Reid j.reid at mail.cryst.bbk.ac.uk
Wed Sep 8 06:38:24 EDT 2010


Hi,

I recently upgraded to numpy 1.5.0 and now I get warnings when I take 
the logarithm of 0.

In [5]: np.log(0.)
Warning: divide by zero encountered in log
Out[5]: -inf


I want to evaluate x * log(x) where its value is defined as 0 when x=0 
so I have the following function:

def safe_x_log_x(x):
     "@return: x log(x) but replaces -inf with 0."
     l = np.log(x)
     result = x * l
     result[np.isneginf(l)] = 0.
     return result


Is there a better way of doing this that won't give me all these 
warnings? Can I turn the warnings off?

Thanks,
John.




More information about the NumPy-Discussion mailing list