tf.cast
Stay organized with collections
Save and categorize content based on your preferences.
Casts a tensor to a new type.
tf.cast(
x, dtype, name=None
)
The operation casts x
(in case of Tensor
) or x.values
(in case of SparseTensor
or IndexedSlices
) to dtype
.
For example:
x = tf.constant([1.8, 2.2], dtype=tf.float32)
tf.dtypes.cast(x, tf.int32)
<tf.Tensor: shape=(2,), dtype=int32, numpy=array([1, 2], dtype=int32)>
The operation supports data types (for x
and dtype
) of
uint8
, uint16
, uint32
, uint64
, int8
, int16
, int32
, int64
,
float16
, float32
, float64
, complex64
, complex128
, bfloat16
.
In case of casting from complex types (complex64
, complex128
) to real
types, only the real part of x
is returned. In case of casting from real
types to complex types (complex64
, complex128
), the imaginary part of the
returned value is set to 0
. The handling of complex types here matches the
behavior of numpy.
Args |
x
|
A Tensor or SparseTensor or IndexedSlices of numeric type. It could
be uint8 , uint16 , uint32 , uint64 , int8 , int16 , int32 ,
int64 , float16 , float32 , float64 , complex64 , complex128 ,
bfloat16 .
|
dtype
|
The destination type. The list of supported dtypes is the same as
x .
|
name
|
A name for the operation (optional).
|
Returns |
A Tensor or SparseTensor or IndexedSlices with same shape as x and
same type as dtype .
|
Raises |
TypeError
|
If x cannot be cast to the dtype .
|
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2020-10-01 UTC.
[null,null,["Last updated 2020-10-01 UTC."],[],[],null,["# tf.cast\n\n\u003cbr /\u003e\n\n|-----------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------|\n| [TensorFlow 1 version](/versions/r1.15/api_docs/python/tf/cast) | [View source on GitHub](https://github.com/tensorflow/tensorflow/blob/v2.2.0/tensorflow/python/ops/math_ops.py#L732-L792) |\n\nCasts a tensor to a new type.\n\n#### View aliases\n\n\n**Main aliases**\n\n[`tf.dtypes.cast`](/api_docs/python/tf/cast)\n**Compat aliases for migration**\n\nSee\n[Migration guide](https://www.tensorflow.org/guide/migrate) for\nmore details.\n\n[`tf.compat.v1.cast`](/api_docs/python/tf/cast), [`tf.compat.v1.dtypes.cast`](/api_docs/python/tf/cast)\n\n\u003cbr /\u003e\n\n tf.cast(\n x, dtype, name=None\n )\n\nThe operation casts `x` (in case of `Tensor`) or `x.values`\n(in case of `SparseTensor` or `IndexedSlices`) to `dtype`.\n\n#### For example:\n\n x = tf.constant([1.8, 2.2], dtype=tf.float32)\n tf.dtypes.cast(x, tf.int32)\n \u003ctf.Tensor: shape=(2,), dtype=int32, numpy=array([1, 2], dtype=int32)\u003e\n\nThe operation supports data types (for `x` and `dtype`) of\n`uint8`, `uint16`, `uint32`, `uint64`, `int8`, `int16`, `int32`, `int64`,\n`float16`, `float32`, `float64`, `complex64`, `complex128`, `bfloat16`.\nIn case of casting from complex types (`complex64`, `complex128`) to real\ntypes, only the real part of `x` is returned. In case of casting from real\ntypes to complex types (`complex64`, `complex128`), the imaginary part of the\nreturned value is set to `0`. The handling of complex types here matches the\nbehavior of numpy.\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\n| Args ---- ||\n|---------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| `x` | A `Tensor` or `SparseTensor` or `IndexedSlices` of numeric type. It could be `uint8`, `uint16`, `uint32`, `uint64`, `int8`, `int16`, `int32`, `int64`, `float16`, `float32`, `float64`, `complex64`, `complex128`, `bfloat16`. |\n| `dtype` | The destination type. The list of supported dtypes is the same as `x`. |\n| `name` | A name for the operation (optional). |\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\n| Returns ------- ||\n|---|---|\n| A `Tensor` or `SparseTensor` or `IndexedSlices` with same shape as `x` and same type as `dtype`. ||\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\n| Raises ------ ||\n|-------------|---------------------------------------|\n| `TypeError` | If `x` cannot be cast to the `dtype`. |\n\n\u003cbr /\u003e"]]