cupy.unique#

cupy.unique(ar, return_index=False, return_inverse=False, return_counts=False, axis=None, *, equal_nan=True)[source]#

Find the unique elements of an array.

Returns the sorted unique elements of an array. There are three optional outputs in addition to the unique elements:

  • the indices of the input array that give the unique values

  • the indices of the unique array that reconstruct the input array

  • the number of times each unique value comes up in the input array

Parameters:
  • ar (array_like) – Input array. This will be flattened if it is not already 1-D.

  • return_index (bool, optional) – If True, also return the indices of ar (along the specified axis, if provided, or in the flattened array) that result in the unique array.

  • return_inverse (bool, optional) – If True, also return the indices of the unique array (for the specified axis, if provided) that can be used to reconstruct ar.

  • return_counts (bool, optional) – If True, also return the number of times each unique item appears in ar.

  • axis (int or None, optional) – Not supported yet.

  • equal_nan (bool, optional) – If True, collapse multiple NaN values in the return array into one.

Returns:

If there are no optional outputs, it returns the cupy.ndarray of the sorted unique values. Otherwise, it returns the tuple which contains the sorted unique values and followings.

  • The indices of the first occurrences of the unique values in the original array. Only provided if return_index is True.

  • The indices to reconstruct the original array from the unique array. Only provided if return_inverse is True.

  • The number of times each of the unique values comes up in the original array. Only provided if return_counts is True.

Return type:

cupy.ndarray or tuple

Warning

This function may synchronize the device.

See also

numpy.unique()