class_docstr: CSVIOTensor
code: def __init__(self, filename, internal=False):
      with tf.name_scope("CSVIOTensor") as scope:
          resource, columns = core_ops.io_csv_readable_init(
              filename,
              container=scope,
              shared_name=f"{filename}/{uuid.uuid4().hex}",
          )
          columns = [
              column.decode() for column in columns.numpy().tolist()
          ]
          elements = []
          for column in columns:
              shape, dtype = core_ops.io_csv_readable_spec(
                  resource, column
              )
              shape = tf.TensorShape(shape.numpy())
              dtype = tf.as_dtype(dtype.numpy())
              spec = tf.TensorSpec(shape, dtype, column)
              function = io_tensor_ops._IOTensorComponentFunction(  # pylint: disable=protected-access
                  core_ops.io_csv_readable_read,
                  resource,
                  column,
                  shape,
                  dtype,
              )
              elements.append(
                  io_tensor_ops.BaseIOTensor(
                      spec, function, internal=internal
                  )
              )
          spec = tuple(e.spec for e in elements)
  
          self._resource = resource
          super().__init__(spec, columns, elements, internal=internal)
  
file_path: io/tensorflow_io/python/ops/csv_io_tensor_ops.py
imports: import uuid
  import tensorflow
  from tensorflow_io.python.ops import io_tensor_ops
  from tensorflow_io.python.ops import core_ops
label_desc: Use image node_id 1 to create a new CSVIOTensor object from inherited base classes: io_tensor_ops with example: obj = CSVIOTensor(filename, internal)