code: def from_row_lengths(
      cls,
      values,
      row_lengths,
      name=None,
  ):
      # TODO : modify this, if necessary, to accept raggedTensor inputs too
      if sum(row_lengths) != values.shape[0]:
          raise ivy.utils.exceptions.IvyException(
              "first dimension of values should be equal to sum(row_lengths) "
          )
      data = []
      z = 0
      for length in row_lengths:
          temp = []
          for i in range(length):
              temp.append(values[z, :])
              z += 1
  
          data.append(ivy.asarray(temp))
  
      # data =[[values[0+i,:] for i in range(length)]
      #   for length in row_lengths]
      return cls(
          values=values,
          row_partition=row_lengths,
          internal=True,
          data=data,
      )
  
file_path: ivy/ivy/functional/frontends/tensorflow/ragged/ragged.py
imports: import ivy
label_desc: Use image node_id 3 for calling the RaggedTensor obj's underlying member method code with example usage: obj.from_row_lengths(cls, values, row_lengths, name) and returns: cls