code: def read_csv(self, file: str, table: str, libref: str ="", nosub: bool =False, opts: dict = None) -> '<SASdata object>':
        
        opts = opts if opts is not None else {}
        code  = "filename x "
  
        if file.lower().startswith("http"):
           code += "url "
  
        code += "\""+file+"\";\n"
        code += "proc import datafile=x out="
        if len(libref):
           code += libref+"."
  
        code += table+" dbms=csv replace; "+self._sb._impopts(opts)+" run;"
  
        if nosub:
           print(code)
        else:
           ll = self.submit(code, "text")
docs: This method will import a csv file into a SAS Data Set and return the SASdata object referring to it.
        file    - eithe the OS filesystem path of the file, or HTTP://... for a url accessible file
        table   - the name of the SAS Data Set to create
        libref  - the libref for the SAS Data Set being created. Defaults to WORK, or USER if assigned
        opts    - a dictionary containing any of the following Proc Import options(datarow, delimiter, getnames, guessingrows)