summaryrefslogtreecommitdiff
path: root/numpy/lib/tests/test_function_base.py
diff options
context:
space:
mode:
authorCharles Harris <charlesr.harris@gmail.com>2016-05-24 10:29:18 -0600
committerCharles Harris <charlesr.harris@gmail.com>2016-05-24 10:29:18 -0600
commit85f66400d6e02c25eb80d673a8b993af614d42b2 (patch)
tree5d12863b6a946164fee8933c1517f0750e4fe2f2 /numpy/lib/tests/test_function_base.py
parent59a7b250d4076d58c8b48bdf3800f2b1eac41e1b (diff)
parent65279ff854825f3421cc210450e4cf24acdd3866 (diff)
downloadnumpy-85f66400d6e02c25eb80d673a8b993af614d42b2.tar.gz
Merge pull request #7667 from rkern/fix/histogram-accuracy
Restore histogram consistency
Diffstat (limited to 'numpy/lib/tests/test_function_base.py')
-rw-r--r--numpy/lib/tests/test_function_base.py11
1 files changed, 11 insertions, 0 deletions
diff --git a/numpy/lib/tests/test_function_base.py b/numpy/lib/tests/test_function_base.py
index 0f71393ad..868a28036 100644
--- a/numpy/lib/tests/test_function_base.py
+++ b/numpy/lib/tests/test_function_base.py
@@ -1407,6 +1407,17 @@ class TestHistogram(TestCase):
assert_raises(ValueError, histogram, vals, range=[np.nan,0.75])
assert_raises(ValueError, histogram, vals, range=[0.25,np.inf])
+ def test_bin_edge_cases(self):
+ # Ensure that floating-point computations correctly place edge cases.
+ arr = np.array([337, 404, 739, 806, 1007, 1811, 2012])
+ hist, edges = np.histogram(arr, bins=8296, range=(2, 2280))
+ mask = hist > 0
+ left_edges = edges[:-1][mask]
+ right_edges = edges[1:][mask]
+ for x, left, right in zip(arr, left_edges, right_edges):
+ self.assertGreaterEqual(x, left)
+ self.assertLess(x, right)
+
class TestHistogramOptimBinNums(TestCase):
"""