Python Pandas中的引擎read_csv

PUN*_*WAL 5 python csv dataframe python-3.x pandas

pd.read_csv()描述“ sep”参数的同时,python中的pandas方法文档中提到了诸如C引擎和Python引擎之类的引擎。

该文档链接为:https : //pandas.pydata.org/pandas-docs/stable/genic/pandas.read_csv.html

这些引擎是什么?每个引擎的作用是什么?是否有任何类比方法可以帮助您更好地理解这些引擎?

jpp*_*jpp 11

pd.read_csv文档指出了“c”(默认)和“python”引擎之间的具体区别。名称指示编写解析器的语言。具体来说,文档指出:

在可能的情况下,pandas 使用 C 解析器(指定为engine='c'),但如果指定了 C 不支持的选项,则可能会回退到 Python。

以下是您应该注意的主要区别(从 v0.23.4 开始):

  • 'c' 更快,而 'python' 目前功能更完整。
  • 'python' 支持skipfooter,而 'c' 不支持
  • 'python' 支持sep除单个字符(inc regex)以外的灵活,而 'c' 不支持。
  • 'python' 支持sep=Nonewithdelim_whitespace=False,这意味着它可以自动检测分隔符,而 'c' 不支持。
  • 'c' 支持float_precision,而 'python' 不支持(或不需要)。

版本说明:

  • dtype 'python' v0.20.0+ 支持。
  • delim_whitespace 'python' v0.18.1+ 支持。

请注意,随着功能的开发,上述内容可能会发生变化。如果您在更高版本中看到意外行为,您应该检查IO 工具(文本、CSV、HDF5 等)

  • 这是文件:https://filebin.net/fkyil2m5yhvr1dbh 任何提示都会很棒。`c` 需要很长时间,而 `python` 更快 (2认同)