# tensorflow::ops::SetDiff1D

`#include <array_ops.h>`

Computes the difference between two lists of numbers or strings.

## Summary

Given a list `x` and a list `y`, this operation returns a list `out` that represents all values that are in `x` but not in `y`. The returned list `out` is sorted in the same order that the numbers appear in `x` (duplicates are preserved). This operation also returns a list `idx` that represents the position of each `out` element in `x`. In other words:

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

For example, given this input:

```prettyprint x = [1, 2, 3, 4, 5, 6] y = [1, 3, 5] ```

This operation would return:

```prettyprint out ==> [2, 4, 6] idx ==> [1, 3, 5] ```

Arguments:

• scope: A Scope object
• x: 1-D. Values to keep.
• y: 1-D. Values to remove.

Returns:

• `Output` out: 1-D. Values present in `x` but not in `y`.
• `Output` idx: 1-D. Positions of `x` values preserved in `out`.

### Constructors and Destructors

`SetDiff1D(const ::tensorflow::Scope & scope, ::tensorflow::Input x, ::tensorflow::Input y)`
`SetDiff1D(const ::tensorflow::Scope & scope, ::tensorflow::Input x, ::tensorflow::Input y, const SetDiff1D::Attrs & attrs)`

### Public attributes

`idx`
`::tensorflow::Output`
`out`
`::tensorflow::Output`

### Public static functions

`OutIdx(DataType x)`
`Attrs`

### Structs

tensorflow::ops::SetDiff1D::Attrs

Optional attribute setters for SetDiff1D.

## Public attributes

### idx

`::tensorflow::Output idx`

### out

`::tensorflow::Output out`

## Public functions

### SetDiff1D

``` SetDiff1D(
const ::tensorflow::Scope & scope,
::tensorflow::Input x,
::tensorflow::Input y
)```

### SetDiff1D

``` SetDiff1D(
const ::tensorflow::Scope & scope,
::tensorflow::Input x,
::tensorflow::Input y,
const SetDiff1D::Attrs & attrs
)```

## Public static functions

### OutIdx

```Attrs OutIdx(
DataType x
)```