mindspore.dataset.transforms.TypeCast
- class mindspore.dataset.transforms.TypeCast(data_type)[source]
Tensor operation to cast to a given MindSpore data type or NumPy data type.
Note
This operation is executed on the CPU by default, but it is also supported to be executed on the GPU or Ascend via heterogeneous acceleration.
- Parameters
data_type (Union[mindspore.dtype, numpy.dtype]) – mindspore.dtype or numpy.dtype (e.g. numpy.float32) to be cast to.
- Raises
TypeError – If data_type is not of MindSpore data type bool, int, float, string or type
numpy.dtype
.
- Supported Platforms:
CPU
GPU
Ascend
Examples
>>> import numpy as np >>> import mindspore.dataset as ds >>> import mindspore.dataset.transforms as transforms >>> from mindspore import dtype as mstype >>> >>> # Use the transform in dataset pipeline mode >>> # Generate 1d int numpy array from 0 - 63 >>> def generator_1d(): ... for i in range(64): ... yield (np.array([i]),) >>> >>> generator_dataset = ds.GeneratorDataset(generator_1d, column_names='col') >>> type_cast_op = transforms.TypeCast(mstype.int32) >>> generator_dataset = generator_dataset.map(operations=type_cast_op) >>> for item in generator_dataset.create_dict_iterator(num_epochs=1, output_numpy=True): ... print(item["col"].shape, item["col"].dtype) ... break (1,) int32 >>> >>> # Use the transform in eager mode >>> data = np.array([2.71606445312564e-03, 6.3476562564e-03]).astype(np.float64) >>> output = transforms.TypeCast(np.float16)(data) >>> print(output.shape, output.dtype) (2,) float16