In [25]: np.power(10,-100) Out[25]: 0 In [26]: math.pow(10,-100) Out[26]: 1e-100
I would expect both the commands to return 1e-100. This is not a precision issue either, since the issue persists even after increasing precision to 500. Is there some setting which I can change to get the correct answer?
Oh, it's much "worse" than that:
In [2]: numpy.power(10,-1) Out[2]: 0
But this is a hint to what's going on: 10
is an integer, and numpy.power
doesn't coerce the numbers to floats. But this works:
In [3]: numpy.power(10.,-1) Out[3]: 0.10000000000000001 In [4]: numpy.power(10.,-100) Out[4]: 1e-100
Note, however, that the power operator, **
, does convert to float:
In [5]: 10**-1 Out[5]: 0.1
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With