summaryrefslogtreecommitdiff
path: root/numpy/core/ma.py
diff options
context:
space:
mode:
authorStefan van der Walt <stefan@sun.ac.za>2007-09-30 10:47:58 +0000
committerStefan van der Walt <stefan@sun.ac.za>2007-09-30 10:47:58 +0000
commitcc3e7f3907f6c0621e5ff8866a078e4049fd2be8 (patch)
tree7deaafaf6acc72f49d310078903595b26f44e7a3 /numpy/core/ma.py
parent325cd587fd8fb15c6b9e69621fa1ae0a54ab8fe5 (diff)
downloadnumpy-cc3e7f3907f6c0621e5ff8866a078e4049fd2be8.tar.gz
ma: output of .sum() should be scalar (patch by reggie,
closes ticket #557).
Diffstat (limited to 'numpy/core/ma.py')
-rw-r--r--numpy/core/ma.py17
1 files changed, 9 insertions, 8 deletions
diff --git a/numpy/core/ma.py b/numpy/core/ma.py
index 3feb4a7d7..79941b7f8 100644
--- a/numpy/core/ma.py
+++ b/numpy/core/ma.py
@@ -396,19 +396,20 @@ class masked_binary_operation:
m = make_mask(m, copy=1)
m.shape = (1,)
if m is nomask:
- return masked_array (self.f.reduce (t, axis))
+ t = self.f.reduce(t, axis)
else:
t = masked_array (t, m)
# XXX: "or t.dtype" below is a workaround for what appears
# XXX: to be a bug in reduce.
- t = self.f.reduce(filled(t, self.filly), axis, dtype=dtype or t.dtype)
+ t = self.f.reduce(filled(t, self.filly), axis,
+ dtype=dtype or t.dtype)
m = umath.logical_and.reduce(m, axis)
- if isinstance(t, ndarray):
- return masked_array(t, m, get_fill_value(target))
- elif m:
- return masked
- else:
- return t
+ if isinstance(t, ndarray):
+ return masked_array(t, m, get_fill_value(target))
+ elif m:
+ return masked
+ else:
+ return t
def outer (self, a, b):
"Return the function applied to the outer product of a and b."