【问题标题】:Pandas - pandas.DataFrame.from_csv vs pandas.read_csv熊猫 - pandas.DataFrame.from_csv 与 pandas.read_csv
【发布时间】:2014-12-17 04:36:29
【问题描述】:

【问题讨论】:

  • 我相信最重要的区别之一是索引列的默认值。使用from_csv 将默认使用第一列作为索引。 read_csv 默认为 None,因此将创建一个索引。 read_csv 应该最适合大多数数据集。
  • 甚至不知道from_csv 的存在,我个人看过这两个我会使用read_csv,因为它有更多的选项可以帮助处理数据
  • 我认为pandas.DataFrame.from_csv 现在已被删除。我无法调用它,并且您的链接给出了 404: Not Found 错误。

标签: python csv pandas


【解决方案1】:

另一个区别是pandas.read_csv 的速度是pandas.DataFrame.from_csv 的 46 到 490 倍(在我的测试中)。

我在我的专有 csv 文件上在 Windows 上的 Python 3.4.4 和 pandas 0.19.2 上对其进行了测试。

【讨论】:

    【解决方案2】:

    没有真正的区别(两者都基于相同的底层函数),但正如 cmets 中所述,它们有一些不同的默认值index_col 为 0 或无,@987654323 @ 分别代表 read_csvDataFrame.from_csv 的 True 或 False)并且 read_csv 支持更多参数(在 from_csv 中它们只是没有被传递)。

    除此之外,建议使用pd.read_csv
    DataFrame.from_csv 仅出于历史原因而存在并保持向后兼容性(计划弃用它,请参阅here ),但所有新功能仅添加到 read_csv(正如您在更长的关键字参数列表中看到的那样)。实际上,这应该在文档中更清楚地说明。

    【讨论】:

    • 谢谢乔里斯。我有兴趣参与 pandas 项目,除非你能想到一个更好的库来进行数据分析或机器学习......
    • @joris: index_col 默认值正好相反——“无或 0”(我编辑过)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-10-04
    • 2016-09-10
    • 2021-07-16
    • 2019-02-28
    • 1970-01-01
    • 1970-01-01
    • 2020-05-23
    相关资源
    最近更新 更多