code: def parse_table_data(lines):
      Parse list of lines from SOFT file into DataFrame.
  
      Args:
          lines (:obj:`Iterable`): Iterator over the lines.
  
      Returns:
          :obj:`pandas.DataFrame`: Table data.
  
      """
      # filter lines that do not start with symbols
      data = "\n".join([i.rstrip() for i in lines
                        if not i.startswith(("^", "!", "#")) and i.rstrip()])
      if data:
          return read_csv(StringIO(data), index_col=None, sep="\t")
      else:
          return DataFrame()
docs: Parse list of lines from SOFT file into DataFrame.
  
      Args:
          lines (:obj:`Iterable`): Iterator over the lines.
  
      Returns:
          :obj:`pandas.DataFrame`: Table data.