summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMelissa Weber Mendonça <melissawm@gmail.com>2021-10-01 12:40:51 -0300
committerGitHub <noreply@github.com>2021-10-01 12:40:51 -0300
commitc7832859666971f4509847ddb2db0a0470c77e95 (patch)
tree489706cad54030e4994d58242dc97c78db408f6f
parentb1daf5a2c7f4abb36d7bfe7d267e65a522c2b655 (diff)
parenta588840c48733e9d66f3e78cd3ccbc2442639b7d (diff)
downloadnumpy-c7832859666971f4509847ddb2db0a0470c77e95.tar.gz
Merge pull request #19899 from arunppsg/issue16751_add_note_to_docs
DOC: replace return type in np.ma.* docstring
-rw-r--r--numpy/ma/core.py44
-rw-r--r--numpy/ma/tests/test_core.py50
2 files changed, 83 insertions, 11 deletions
diff --git a/numpy/ma/core.py b/numpy/ma/core.py
index 7e2d744a3..2ff1667ba 100644
--- a/numpy/ma/core.py
+++ b/numpy/ma/core.py
@@ -68,13 +68,13 @@ __all__ = [
'masked_singleton', 'masked_values', 'masked_where', 'max', 'maximum',
'maximum_fill_value', 'mean', 'min', 'minimum', 'minimum_fill_value',
'mod', 'multiply', 'mvoid', 'ndim', 'negative', 'nomask', 'nonzero',
- 'not_equal', 'ones', 'outer', 'outerproduct', 'power', 'prod',
+ 'not_equal', 'ones', 'ones_like', 'outer', 'outerproduct', 'power', 'prod',
'product', 'ptp', 'put', 'putmask', 'ravel', 'remainder',
'repeat', 'reshape', 'resize', 'right_shift', 'round', 'round_',
'set_fill_value', 'shape', 'sin', 'sinh', 'size', 'soften_mask',
'sometrue', 'sort', 'sqrt', 'squeeze', 'std', 'subtract', 'sum',
'swapaxes', 'take', 'tan', 'tanh', 'trace', 'transpose', 'true_divide',
- 'var', 'where', 'zeros',
+ 'var', 'where', 'zeros', 'zeros_like',
]
MaskType = np.bool_
@@ -8159,8 +8159,18 @@ arange = _convert2ma(
np_ret='arange : ndarray',
np_ma_ret='arange : MaskedArray',
)
-clip = np.clip
-diff = np.diff
+clip = _convert2ma(
+ 'clip',
+ params=dict(fill_value=None, hardmask=False),
+ np_ret='clipped_array : ndarray',
+ np_ma_ret='clipped_array : MaskedArray',
+)
+diff = _convert2ma(
+ 'diff',
+ params=dict(fill_value=None, hardmask=False),
+ np_ret='diff : ndarray',
+ np_ma_ret='diff : MaskedArray',
+)
empty = _convert2ma(
'empty',
params=dict(fill_value=None, hardmask=False),
@@ -8188,22 +8198,40 @@ identity = _convert2ma(
np_ret='out : ndarray',
np_ma_ret='out : MaskedArray',
)
-indices = np.indices
+indices = _convert2ma(
+ 'indices',
+ params=dict(fill_value=None, hardmask=False),
+ np_ret='grid : one ndarray or tuple of ndarrays',
+ np_ma_ret='grid : one MaskedArray or tuple of MaskedArrays',
+)
ones = _convert2ma(
'ones',
params=dict(fill_value=None, hardmask=False),
np_ret='out : ndarray',
np_ma_ret='out : MaskedArray',
)
-ones_like = np.ones_like
-squeeze = np.squeeze
+ones_like = _convert2ma(
+ 'ones_like',
+ np_ret='out : ndarray',
+ np_ma_ret='out : MaskedArray',
+)
+squeeze = _convert2ma(
+ 'squeeze',
+ params=dict(fill_value=None, hardmask=False),
+ np_ret='squeezed : ndarray',
+ np_ma_ret='squeezed : MaskedArray',
+)
zeros = _convert2ma(
'zeros',
params=dict(fill_value=None, hardmask=False),
np_ret='out : ndarray',
np_ma_ret='out : MaskedArray',
)
-zeros_like = np.zeros_like
+zeros_like = _convert2ma(
+ 'zeros_like',
+ np_ret='out : ndarray',
+ np_ma_ret='out : MaskedArray',
+)
def append(a, b, axis=None):
diff --git a/numpy/ma/tests/test_core.py b/numpy/ma/tests/test_core.py
index 7e9522b3a..bf95c999a 100644
--- a/numpy/ma/tests/test_core.py
+++ b/numpy/ma/tests/test_core.py
@@ -43,9 +43,9 @@ from numpy.ma.core import (
masked_less, masked_less_equal, masked_not_equal, masked_outside,
masked_print_option, masked_values, masked_where, max, maximum,
maximum_fill_value, min, minimum, minimum_fill_value, mod, multiply,
- mvoid, nomask, not_equal, ones, outer, power, product, put, putmask,
- ravel, repeat, reshape, resize, shape, sin, sinh, sometrue, sort, sqrt,
- subtract, sum, take, tan, tanh, transpose, where, zeros,
+ mvoid, nomask, not_equal, ones, ones_like, outer, power, product, put,
+ putmask, ravel, repeat, reshape, resize, shape, sin, sinh, sometrue, sort,
+ sqrt, subtract, sum, take, tan, tanh, transpose, where, zeros, zeros_like,
)
from numpy.compat import pickle
@@ -3229,6 +3229,50 @@ class TestMaskedArrayMethods:
b = a.view(masked_array)
assert_(np.may_share_memory(a.mask, b.mask))
+ def test_zeros(self):
+ # Tests zeros/like
+ datatype = [('a', int), ('b', float), ('c', '|S8')]
+ a = masked_array([(1, 1.1, '1.1'), (2, 2.2, '2.2'), (3, 3.3, '3.3')],
+ dtype=datatype)
+ assert_equal(len(a.fill_value.item()), len(datatype))
+
+ b = zeros(len(a), dtype=datatype)
+ assert_equal(b.shape, a.shape)
+ assert_equal(b.fill_value, a.fill_value)
+
+ b = zeros_like(a)
+ assert_equal(b.shape, a.shape)
+ assert_equal(b.fill_value, a.fill_value)
+
+ # check zeros_like mask handling
+ a = masked_array([1, 2, 3], mask=[False, True, False])
+ b = zeros_like(a)
+ assert_(not np.may_share_memory(a.mask, b.mask))
+ b = a.view()
+ assert_(np.may_share_memory(a.mask, b.mask))
+
+ def test_ones(self):
+ # Tests ones/like
+ datatype = [('a', int), ('b', float), ('c', '|S8')]
+ a = masked_array([(1, 1.1, '1.1'), (2, 2.2, '2.2'), (3, 3.3, '3.3')],
+ dtype=datatype)
+ assert_equal(len(a.fill_value.item()), len(datatype))
+
+ b = ones(len(a), dtype=datatype)
+ assert_equal(b.shape, a.shape)
+ assert_equal(b.fill_value, a.fill_value)
+
+ b = ones_like(a)
+ assert_equal(b.shape, a.shape)
+ assert_equal(b.fill_value, a.fill_value)
+
+ # check ones_like mask handling
+ a = masked_array([1, 2, 3], mask=[False, True, False])
+ b = ones_like(a)
+ assert_(not np.may_share_memory(a.mask, b.mask))
+ b = a.view()
+ assert_(np.may_share_memory(a.mask, b.mask))
+
@suppress_copy_mask_on_assignment
def test_put(self):
# Tests put.