Where - 9 vs 16¶
Next section compares an older to a newer version of the same operator after both definition are converted into markdown text. Green means an addition to the newer version, red means a deletion. Anything else is unchanged.
- Where9 → Where16 +1 -2
Where9 → Where16
RENAMED
@@ -1 +1 @@
|
|
1
1
|
Return elements, either from X or Y, depending on condition.
|
2
2
|
Where behaves like
|
3
3
|
[numpy.where](https://docs.scipy.org/doc/numpy/reference/generated/numpy.where.html)
|
4
4
|
with three parameters.
|
5
5
|
This operator supports **multidirectional (i.e., Numpy-style) broadcasting**; for more details please check [Broadcasting in ONNX](https://github.com/onnx/onnx/blob/main/docs/Broadcasting.md).
|
6
6
|
### Inputs
|
7
7
|
- **condition** (heterogeneous) - **B**:
|
8
8
|
When True (nonzero), yield X, otherwise yield Y
|
9
9
|
- **X** (heterogeneous) - **T**:
|
10
10
|
values selected at indices where condition is True
|
11
11
|
- **Y** (heterogeneous) - **T**:
|
12
12
|
values selected at indices where condition is False
|
13
13
|
### Outputs
|
14
14
|
- **output** (heterogeneous) - **T**:
|
15
15
|
Tensor of shape equal to the broadcasted shape of condition, X, and Y.
|
16
16
|
### Type Constraints
|
17
17
|
* **B** in ( tensor(bool) ):
|
18
18
|
Constrain to boolean tensors.
|
19
|
-
* **T** in ( tensor(bool), tensor(complex128), tensor(complex64), tensor(double), tensor(float), tensor(float16), tensor(int16), tensor(int32), tensor(int64), tensor(int8), tensor(string), tensor(uint16), tensor(uint32), tensor(uint64), tensor(uint8) ):
|
19
|
+
* **T** in ( tensor(bfloat16), tensor(bool), tensor(complex128), tensor(complex64), tensor(double), tensor(float), tensor(float16), tensor(int16), tensor(int32), tensor(int64), tensor(int8), tensor(string), tensor(uint16), tensor(uint32), tensor(uint64), tensor(uint8) ):
|
20
|
-
Constrain input and output types to all tensor types.+ Constrain input and output types to all tensor types (including bfloat).? +++++++++++++++++++
|