diff options
Diffstat (limited to 'numpy')
-rw-r--r-- | numpy/ma/core.py | 19 |
1 files changed, 9 insertions, 10 deletions
diff --git a/numpy/ma/core.py b/numpy/ma/core.py index 3c26a45e5..427c146a2 100644 --- a/numpy/ma/core.py +++ b/numpy/ma/core.py @@ -6500,20 +6500,19 @@ def power(a, b, third=None): result._data[invalid] = result.fill_value return result +argmin = _frommethod('argmin') +argmax = _frommethod('argmax') def argsort(a, axis=None, kind='quicksort', order=None, fill_value=None): "Function version of the eponymous method." - if fill_value is None: - fill_value = default_fill_value(a) - d = filled(a, fill_value) - if axis is None: - return d.argsort(kind=kind, order=order) - return d.argsort(axis, kind=kind, order=order) -argsort.__doc__ = MaskedArray.argsort.__doc__ - -argmin = _frommethod('argmin') -argmax = _frommethod('argmax') + a = np.asanyarray(a) + if isinstance(a, MaskedArray): + return a.argsort(axis=axis, kind=kind, order=order, + fill_value=fill_value) + else: + return a.argsort(axis=axis, kind=kind, order=order) +argsort.__doc__ = MaskedArray.argsort.__doc__ def sort(a, axis=-1, kind='quicksort', order=None, endwith=True, fill_value=None): "Function version of the eponymous method." |