# UniqueWithCounts

public final class UniqueWithCounts

Finds unique elements along an axis of a tensor.

This operation either returns a tensor `y` containing unique elements along the `axis` of a tensor. The returned unique elements is sorted in the same order as they occur along `axis` in `x`. This operation also returns a tensor `idx` and a tensor `count` that are the same size as the number of the elements in `x` along the `axis` dimension. The `idx` contains the index in the unique output `y` and the `count` contains the count in the unique output `y`. In other words, for an `1-D` tensor `x` with `axis = None:

`y[idx[i]] = x[i] for i in [0, 1,...,rank(x) - 1]`

For example:

``````x = tf.constant([1, 1, 2, 4, 4, 4, 7, 8, 8])
y, idx, count = UniqueWithCountsV2(x, axis = [0])
y ==> [1, 2, 4, 7, 8]
idx ==> [0, 0, 1, 2, 2, 2, 3, 4, 4]
count ==> [2, 1, 3, 1, 2]
``````
For a `2-D` tensor `x` with `axis = 0`:
``````x = tf.constant([[1, 0, 0],
[1, 0, 0],
[2, 0, 0]])
y, idx, count = UniqueWithCountsV2(x, axis=[0])
y ==> [[1, 0, 0],
[2, 0, 0]]
idx ==> [0, 0, 1]
count ==> [2, 1]
``````
For a `2-D` tensor `x` with `axis = 1`:
``````x = tf.constant([[1, 0, 0],
[1, 0, 0],
[2, 0, 0]])
y, idx, count = UniqueWithCountsV2(x, axis=[1])
y ==> [[1, 0],
[1, 0],
[2, 0]]
idx ==> [0, 1, 1]
count ==> [1, 2]
``````

### Public Methods

 Output () A 1-D Tensor. static UniqueWithCounts ( Scope scope, Operand x, Operand axis, Class outIdx) Factory method to create a class wrapping a new UniqueWithCounts operation. static UniqueWithCounts ( Scope scope, Operand x, Operand axis) Factory method to create a class wrapping a new UniqueWithCounts operation using default output types. Output () A 1-D Tensor. Output () A `Tensor`.

## Public Methods

#### public Output <V> count ()

A 1-D Tensor. The count of each value of x in the output y.

#### public static UniqueWithCounts <T, V> create ( Scope scope, Operand <T> x, Operand <U> axis, Class<V> outIdx)

Factory method to create a class wrapping a new UniqueWithCounts operation.

##### Parameters
 scope current scope A `Tensor`. A `Tensor` of type `int32` (default: None). The axis of the Tensor to find the unique elements.
##### Returns
• a new instance of UniqueWithCounts

#### public static UniqueWithCounts <T, Integer> create ( Scope scope, Operand <T> x, Operand <U> axis)

Factory method to create a class wrapping a new UniqueWithCounts operation using default output types.

##### Parameters
 scope current scope A `Tensor`. A `Tensor` of type `int32` (default: None). The axis of the Tensor to find the unique elements.
##### Returns
• a new instance of UniqueWithCounts

#### public Output <V> idx ()

A 1-D Tensor. Has the same type as x that contains the index of each value of x in the output y.

#### public Output <T> y ()

A `Tensor`. Unique elements along the `axis` of `Tensor` x.

[]
[]