docstr: Reads a CSV file and yields frame data.
  Args:
      column_list: list of columns (TupleValueExpression)
      to read from the CSV file
docstr_tok: ["Reads","a","CSV","file","and","yields","frame","data",".","Args",":","column_list",":","list","of","columns","(","TupleValueExpression",")","to","read","from","the","CSV","file"]
code: def __init__(self, *args, column_list, **kwargs):
      """
      Reads a CSV file and yields frame data.
      Args:
          column_list: list of columns (TupleValueExpression)
          to read from the CSV file
      """
  
      self._column_list = column_list
      super().__init__(*args, **kwargs)
  
file_path: evadb/evadb/readers/csv_reader.py
imports: from typing import Dict, Iterator
  import numpy
  import pandas
  from evadb.catalog.sql_config import IDENTIFIER_COLUMN
  from evadb.readers.abstract_reader import AbstractReader
  from evadb.utils.logging_manager import logger
label_desc: Use image node_id 1 to create a new CSVReader object from inherited base classes: AbstractReader with example: obj = CSVReader()