3

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

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

4

2 回答 2

2

引自介绍页。

11.2.1 与基础 R 相比

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

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

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

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


*请注意,从R 4.0.0

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

于 2020-02-24T11:27:37.900 回答
2

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

原始数字

由 read_csv 读取

由 read.csv 读取

于 2020-09-10T10:20:22.597 回答