Source code for lector.csv.pandas

import pandas as pd

from .abc import Reader


[docs] class PandasReader(Reader): """Use base class detection methods to configure a pandas.read_csv() call."""
[docs] def parse(self, *args, **kwds): """Invoke Pandas' parser with inferred CSV format.""" cfg = { "encoding": self.format.encoding, "skiprows": self.format.preamble, "on_bad_lines": "warn", "engine": "python", } cfg.update(self.format.dialect) # Or "\n"? Pandas doesn't allow "\r\n"... cfg["lineterminator"] = None kwds = {**cfg, **kwds} result = pd.read_csv(self.buffer, *args, **kwds) return result