diff options
Diffstat (limited to 'numpy')
-rw-r--r-- | numpy/lib/histograms.py | 9 | ||||
-rw-r--r-- | numpy/lib/twodim_base.py | 8 |
2 files changed, 15 insertions, 2 deletions
diff --git a/numpy/lib/histograms.py b/numpy/lib/histograms.py index 5bcedc7f4..478fbc783 100644 --- a/numpy/lib/histograms.py +++ b/numpy/lib/histograms.py @@ -3,6 +3,7 @@ Histogram-related functions """ from __future__ import division, absolute_import, print_function +import contextlib import functools import operator import warnings @@ -922,7 +923,13 @@ def histogram(a, bins=10, range=None, normed=None, weights=None, def _histogramdd_dispatcher(sample, bins=None, range=None, normed=None, weights=None, density=None): - return (sample, bins, weights) + if hasattr(sample, 'shape'): # same condition as used in histogramdd + yield sample + else: + yield from sample + with contextlib.supress(TypeError): + yield from bins + yield weights @array_function_dispatch(_histogramdd_dispatcher) diff --git a/numpy/lib/twodim_base.py b/numpy/lib/twodim_base.py index e165c9b02..1928aa10c 100644 --- a/numpy/lib/twodim_base.py +++ b/numpy/lib/twodim_base.py @@ -565,7 +565,13 @@ def vander(x, N=None, increasing=False): def _histogram2d_dispatcher(x, y, bins=None, range=None, normed=None, weights=None, density=None): - return (x, y, bins, weights) + yield x + yield y + if hasattr(bins, 'shape'): # same condition as used in histogramdd + yield bins + else: + yield from bins + return weights @array_function_dispatch(_histogram2d_dispatcher) |