我应该使用dtplyr
而不是data.table
和dplyr
吗? 我应该害怕使用dplyr
或data.table
(独立(,因为它们掩盖了"默认"包(如zoo
,xts
等(的许多功能?什么是这里的良好做法?由于dplyr
和data.table
都在CRAN
我想,autors进行了一些良好的实践,或者也许没有指导方针可以遵循?我看到很多关于对象屏蔽的 silimar 问题,我想知道dplyr
对象命名是否不太混乱,或者它是如此简单以至于它是最好的选择?
> library(dplyr)
-----------------------------------------------------------------------
data.table + dplyr code now lives in dtplyr.
Please library(dtplyr)!
-----------------------------------------------------------------------
Attaching package: ‘dplyr’
The following objects are masked from ‘package:data.table’:
between, first, last
The following objects are masked from ‘package:xts’:
first, last
The following objects are masked from ‘package:stats’:
filter, lag
The following objects are masked from ‘package:base’:
intersect, setdiff, setequal, union
如果您担心冲突,请尝试不要加载 dplyr,而是将 dplyr:: 放在您希望使用的任何 dplyr 函数前面。 dplyr中的%>%
来自magrittr包,它没有冲突,因此您仍然可以加载它。 例如
library(magrittr)
iris %>% dplyr::group_by(Species) %>% dplyr::summarize_all(mean)
或者像这样定义 DPLYR 中要使用的函数:
library(magrittr)
group_by <- dplyr::group_by
summarize_all <- dplyr::summarize_all
iris %>% group_by(Species) %>% summarize_all(mean)