code: def scale_by_min_max(
      x: common_types.ConsistentTensorType,
      output_min: float = 0.0,
      output_max: float = 1.0,
      elementwise: bool = False,
      name: Optional[str] = None,
  ) -> common_types.ConsistentTensorType:
      """Scale a numerical column into the range [output_min, output_max].
  
      Args:
        x: A numeric `Tensor`, `SparseTensor`, or `RaggedTensor`.
        output_min: The minimum of the range of output values.
        output_max: The maximum of the range of output values.
        elementwise: If true, scale each element of the tensor independently.
        name: (Optional) A name for this operation.
  
      Returns:
        A `Tensor` containing the input column scaled to [output_min, output_max].
        If the analysis dataset is empty or contains a singe distinct value, then
        `x` is scaled using a sigmoid function.
  
      Raises:
        ValueError: If output_min, output_max have the wrong order.
      """
      with tf.compat.v1.name_scope(name, "scale_by_min_max"):
          return _scale_by_min_max_internal(
              x,
              key=None,
              output_min=output_min,
              output_max=output_max,
              elementwise=elementwise,
              key_vocabulary_filename=None,
          )
  
imports: import os
  from typing import Any, Callable, Iterable, Optional, Tuple, Union
  import tensorflow
  from tensorflow_transform import analyzers
  from tensorflow_transform import common
  from tensorflow_transform import common_types
  from tensorflow_transform import gaussianization
  from tensorflow_transform import schema_inference
  from tensorflow_transform import tf_utils
  from tfx_bsl.types import tfx_namedtuple
label_desc: Use image node_id 5 for calling a global function with example usage: scale_by_min_max(x, output_min, output_max, elementwise, name) and returns: _scale_by_min_max_internal