summaryrefslogtreecommitdiff
path: root/numpy/ma/extras.py
diff options
context:
space:
mode:
Diffstat (limited to 'numpy/ma/extras.py')
-rw-r--r--numpy/ma/extras.py10
1 files changed, 4 insertions, 6 deletions
diff --git a/numpy/ma/extras.py b/numpy/ma/extras.py
index 51064e831..64a9844cf 100644
--- a/numpy/ma/extras.py
+++ b/numpy/ma/extras.py
@@ -1278,14 +1278,12 @@ def setdiff1d(ar1, ar2, assume_unique=False):
fill_value = 999999)
"""
- if not assume_unique:
+ if assume_unique:
+ ar1 = ma.asarray(ar1).ravel()
+ else:
ar1 = unique(ar1)
ar2 = unique(ar2)
- aux = in1d(ar1, ar2, assume_unique=True)
- if aux.size == 0:
- return aux
- else:
- return ma.asarray(ar1)[aux == 0]
+ return ar1[in1d(ar1, ar2, assume_unique=True, invert=True)]
#####--------------------------------------------------------------------------