[NumPy-Tickets] [NumPy] #1774: assert_array_almost_equal prints low precision
NumPy Trac
numpy-tickets@scipy....
Wed Mar 16 11:07:25 CDT 2011
#1774: assert_array_almost_equal prints low precision
---------------------------+------------------------------------------------
Reporter: sienkiew | Owner: somebody
Type: enhancement | Status: new
Priority: normal | Milestone: Unscheduled
Component: numpy.testing | Version: devel
Keywords: |
---------------------------+------------------------------------------------
If you do this,
{{{
a=numpy.array( [ 16.50698631688883822 ] )
b=numpy.array([ 16.50698632 ])
numpy.testing.assert_array_almost_equal(a,b,decimal=15)
}}}
it says
{{{
AssertionError:
Arrays are not almost equal to 15 decimals
(mismatch 100.0%)
x: array([ 16.50698632])
y: array([ 16.50698632])
}}}
In discussion on the mailing list, Robert Kern gave a good explanation of
why this happens and suggested that instead of repr(),
{{{
It should probably use np.array_repr(x, precision=16)
}}}
Instead of fixing the precision at 16, maybe it should use the decimal
parameter to choose the precision to print. The point being that if the
arrays are not almost equal, we should be able to see which elements did
and did not match.
--
Ticket URL: <http://projects.scipy.org/numpy/ticket/1774>
NumPy <http://projects.scipy.org/numpy>
My example project
More information about the NumPy-Tickets
mailing list