diff options
author | Stefan van der Walt <stefan@sun.ac.za> | 2007-09-30 10:47:58 +0000 |
---|---|---|
committer | Stefan van der Walt <stefan@sun.ac.za> | 2007-09-30 10:47:58 +0000 |
commit | cc3e7f3907f6c0621e5ff8866a078e4049fd2be8 (patch) | |
tree | 7deaafaf6acc72f49d310078903595b26f44e7a3 /numpy/core/ma.py | |
parent | 325cd587fd8fb15c6b9e69621fa1ae0a54ab8fe5 (diff) | |
download | numpy-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.py | 17 |
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." |