【问题标题】:What is the practical difference between read_csv and read.csv? When should one be used over another?read_csv 和 read.csv 之间的实际区别是什么?什么时候应该使用一个而不是另一个?
【发布时间】:2020-06-08 00:32:12
【问题描述】:

我经常使用逗号分隔值,并对read_csv()read.csv() 之间的区别感到好奇。

是否有任何实际差异可以阐明两者的情境用法?

【问题讨论】:

    标签: r csv readr


    【解决方案1】:

    read_csv() 读取逗号分隔的数字。将 1,000 读作 1000。

    original numbers

    read by read_csv

    read by read.csv

    【讨论】:

      【解决方案2】:

      引自the introduction page.

      11.2.1 与基础 R 相比

      如果您以前使用过 R,您可能想知道为什么我们不使用 read.csv()。有几个充分的理由支持 readr 函数而不是基本等效函数:

      它们通常比基本的同类产品快得多(~10 倍)。长时间运行的作业有一个进度条,因此您可以看到正在发生的事情。如果您正在寻找原始速度,请尝试data.table::fread()。它不太适合 tidyverse,但它可以更快一些。

      它们产生 tibbles,它们不将字符向量转换为因子*,使用行名或 munge 列名。这些是对基本 R 函数感到沮丧的常见原因。

      它们的重现性更高。基本 R 函数从您的操作系统和环境变量中继承某些行为,因此在您的计算机上工作的导入代码可能不适用于其他人。


      *注意来自R 4.0.0

      R [...] 使用 stringsAsFactors = FALSE 默认值,因此默认情况下不再将字符串转换为调用 data.frame()read.table() 的因子。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2015-10-02
        • 1970-01-01
        • 1970-01-01
        • 2010-10-28
        • 2017-01-23
        • 1970-01-01
        • 2011-10-01
        • 1970-01-01
        相关资源
        最近更新 更多