summaryrefslogtreecommitdiff
path: root/numpy/lib/function_base.py
diff options
context:
space:
mode:
Diffstat (limited to 'numpy/lib/function_base.py')
-rw-r--r--numpy/lib/function_base.py14
1 files changed, 7 insertions, 7 deletions
diff --git a/numpy/lib/function_base.py b/numpy/lib/function_base.py
index d35b0efd2..1a93b5a1d 100644
--- a/numpy/lib/function_base.py
+++ b/numpy/lib/function_base.py
@@ -1295,15 +1295,15 @@ def _nanop(op, fill, a, axis=None):
"""
y = array(a, subok=True)
- mask = isnan(a)
# We only need to take care of NaN's in floating point arrays
- if not np.issubdtype(y.dtype, np.integer):
- # y[mask] = fill
- # We can't use fancy indexing here as it'll mess w/ MaskedArrays
- # Instead, let's fill the array directly...
- np.putmask(y, mask, fill)
-
+ if np.issubdtype(y.dtype, np.integer):
+ return op(y, axis=axis)
+ mask = isnan(a)
+ # y[mask] = fill
+ # We can't use fancy indexing here as it'll mess w/ MaskedArrays
+ # Instead, let's fill the array directly...
+ np.putmask(y, mask, fill)
res = op(y, axis=axis)
mask_all_along_axis = mask.all(axis=axis)