summaryrefslogtreecommitdiff
path: root/numpy/core/ma.py
diff options
context:
space:
mode:
authorTravis Oliphant <oliphant@enthought.com>2006-08-18 17:01:19 +0000
committerTravis Oliphant <oliphant@enthought.com>2006-08-18 17:01:19 +0000
commit543e764f6f0b05c38f460aeae9036dc2e6be2f2b (patch)
tree1addcd0245a4512a72a620be65d2c0d73934240f /numpy/core/ma.py
parent44b8093162207cf82143b58d9cdf5a2af7ed0731 (diff)
downloadnumpy-543e764f6f0b05c38f460aeae9036dc2e6be2f2b.tar.gz
Fix ticket #254 and allow defining NPY_NO_PREFIX instead of including 'noprefix.h'
Diffstat (limited to 'numpy/core/ma.py')
-rw-r--r--numpy/core/ma.py8
1 files changed, 6 insertions, 2 deletions
diff --git a/numpy/core/ma.py b/numpy/core/ma.py
index 591ad801a..2e2d3f8ec 100644
--- a/numpy/core/ma.py
+++ b/numpy/core/ma.py
@@ -376,6 +376,10 @@ class masked_binary_operation:
d1 = filled(a, self.fillx)
d2 = filled(b, self.filly)
result = self.f(d1, d2, *args, **kwargs)
+ if isinstance(result, ndarray) \
+ and m.ndim != 0 \
+ and m.shape != result.shape:
+ m = mask_or(getmaskarray(a), getmaskarray(b))
return masked_array(result, m)
def reduce (self, target, axis=0, dtype=None):
@@ -678,7 +682,7 @@ class MaskedArray (object):
return masked_array(self._data.real, mask=nomask,
fill_value = self.fill_value())
else:
- return masked_array(self._data.real, mask=self._mask.ravel(),
+ return masked_array(self._data.real, mask=self._mask,
fill_value = self.fill_value())
def _set_real (self, value):
@@ -692,7 +696,7 @@ class MaskedArray (object):
return masked_array(self._data.imag, mask=nomask,
fill_value = self.fill_value())
else:
- return masked_array(self._data.imag, mask=self._mask.ravel(),
+ return masked_array(self._data.imag, mask=self._mask,
fill_value = self.fill_value())
def _set_imaginary (self, value):