tensorflow:: ops:: Where3

#include <math_ops.h>

Selects elements from x or y , depending on condition .


The x , and y tensors must all have the same shape, and the output will also have that shape.

The condition tensor must be a scalar if x and y are scalars. If x and y are vectors or higher rank, then condition must be either a scalar, a vector with size matching the first dimension of x , or must have the same shape as x .

The condition tensor acts as a mask that chooses, based on the value at each element, whether the corresponding element / row in the output should be taken from x (if true) or y (if false).

If condition is a vector and x and y are higher rank matrices, then it chooses which row (outer dimension) to copy from x and y . If condition has the same shape as x and y , then it chooses which element to copy from x and y .

For example:

# 'condition' tensor is [[True,  False]
#                        [False, True]]
# 't' is [[1, 2],
#         [3, 4]]
# 'e' is [[5, 6],
#         [7, 8]]
select(condition, t, e)  # => [[1, 6], [7, 4]]

# 'condition' tensor is [True, False]
# 't' is [[1, 2],
#         [3, 4]]
# 'e' is [[5, 6],
#         [7, 8]]
select(condition, t, e) ==> [[1, 2],
                             [7, 8]]



  • scope: A Scope object
  • x: = A Tensor which may have the same shape as condition . If condition is rank 1, x may have higher rank, but its first dimension must match the size of condition .
  • y: = A Tensor with the same type and shape as x .


Constructors and Destructors

Where3 (const :: tensorflow::Scope & scope, :: tensorflow::Input condition, :: tensorflow::Input x, :: tensorflow::Input y)

Public attributes


Public functions

node () const
::tensorflow::Node *
operator::tensorflow::Input () const
operator::tensorflow::Output () const

Public attributes


Operation operation


::tensorflow::Output output

Public functions


  const ::tensorflow::Scope & scope,
  ::tensorflow::Input condition,
  ::tensorflow::Input x,
  ::tensorflow::Input y


::tensorflow::Node * node() const 


 operator::tensorflow::Input() const 


 operator::tensorflow::Output() const