数据表、dplyr等对象屏蔽

数据表、dplyr等对象屏蔽,r,methods,data.table,dplyr,R,Methods,Data.table,Dplyr,我应该使用dtplyr而不是data.table和dplyr?我是否应该害怕使用dplyr或data.table(独立),因为它们屏蔽了许多来自“默认”包(如zoo,xts等)的功能?这里的好做法是什么?由于dplyr和data.table都在CRAN上,我想,autors进行了一些良好的实践,或者可能没有可遵循的指南?我看到很多关于对象掩蔽的silimar问题,我想知道dplyr对象命名是不是太混乱了,还是太简单了以至于它是最好的选择 > library(dplyr) ---------

我应该使用
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)
库(magrittr)
按百分比分组汇总所有(平均值)

如果冲突是您关心的问题,请尝试不加载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)
库(magrittr)
按百分比分组汇总所有(平均值)

如果您想知道冲突,可以运行
冲突(detail=TRUE)
。除此之外,我不确定这个问题是关于什么的。这是基于观点的。如果你问我,我会告诉你根本不要使用dplyr。如果你在[r]上询问99.9%的用户,他们会告诉你他们不在乎冲突,只要是哈德利写的。另外,我找不到任何
数据。table
是从基本R屏蔽的。
zoo
xts
不是默认函数和
数据。table
可能只是为
数据提供了方法。tble
对象仅(不同于dplyrs
setdiff
filter
等)例如,在控制台中键入
data.table::last
,您将看到它确实显式地处理了与
xts::last
的冲突。我猜这适用于所有与流行软件包冲突的data.table函数。如果您想知道冲突,可以运行
冲突(detail=TRUE)
。除此之外,我不确定这个问题是关于什么的。这是基于观点的。如果你问我,我会告诉你根本不要使用dplyr。如果你在[r]上询问99.9%的用户,他们会告诉你他们不在乎冲突,只要是哈德利写的。另外,我找不到任何
数据。table
是从基本R屏蔽的。
zoo
xts
不是默认函数和
数据。table
可能只是为
数据提供了方法。tble
对象仅(不同于dplyrs
setdiff
filter
等)例如,在控制台中键入
data.table::last
,您将看到它确实显式地处理了与
xts::last
的冲突。我猜这适用于所有与流行软件包冲突的data.table函数。