summaryrefslogtreecommitdiff
path: root/numpy/lib/arraysetops.py
diff options
context:
space:
mode:
authorjaimefrio <jaime.frio@gmail.com>2014-06-06 16:57:14 -0700
committerjaimefrio <jaime.frio@gmail.com>2014-06-06 16:57:39 -0700
commit44529602509f7af4d103ce968248eafbd51af5be (patch)
tree47a333ddab725ab57d9c3e449efc14b0eb3e3270 /numpy/lib/arraysetops.py
parent4c854c2633894387988b43306ff72333cb00613a (diff)
downloadnumpy-44529602509f7af4d103ce968248eafbd51af5be.tar.gz
BUG: Correct behavior for lists of tuples in unique, closes #4785
np.unique produces wrong results when passed a list of tuples and no keyword arguments, as it fails to recognize it as a multidim array, but handles it as a 1D array of objects. The only way around this seems to be to completely eliminate the fast path for non-array inputs using `set`.
Diffstat (limited to 'numpy/lib/arraysetops.py')
-rw-r--r--numpy/lib/arraysetops.py8
1 files changed, 1 insertions, 7 deletions
diff --git a/numpy/lib/arraysetops.py b/numpy/lib/arraysetops.py
index 0755fffd1..005703d16 100644
--- a/numpy/lib/arraysetops.py
+++ b/numpy/lib/arraysetops.py
@@ -167,13 +167,7 @@ def unique(ar, return_index=False, return_inverse=False, return_counts=False):
array([1, 2, 6, 4, 2, 3, 2])
"""
- try:
- ar = ar.flatten()
- except AttributeError:
- if not return_inverse and not return_index and not return_counts:
- return np.sort(list((set(ar))))
- else:
- ar = np.asanyarray(ar).flatten()
+ ar = np.asanyarray(ar).flatten()
optional_indices = return_index or return_inverse
optional_returns = optional_indices or return_counts