R中的包冲突

u4dcyp6a  于 2023-01-10  发布在  其他
关注(0)|答案(2)|浏览(526)

当我加载tidyverse [或键入tidyverse_conflicts()]时,出现一条警告消息,告诉我dplyr::filter()dplyr::lag()两个函数之间存在冲突。我们如何避免这种冲突?感谢您的回复!下面是一个快照:

carvr3hs

carvr3hs1#

这条信息意味着从那一刻起:

  • 如果您使用filter(),则将使用dplyr中的filter(),而不是碱基R(stats)中的filter();
  • 对于lag()类似。

dplyr::filter()dplyr::lag()之间不存在任何冲突。)
这通常不是问题--绝大多数代码都能正常工作。
如果出于某种原因,您想使用这两个函数中的任何一个的base R版本,您只需显式调用它们即可:stats::filter(...)stats::lag(...)

tcbh2hod

tcbh2hod2#

当我们加载tidyverse时,一条消息说"使用冲突的包来强制所有冲突变为错误"。
因此,你所要做的就是:

library(conflicted)  

library(tidyverse)
conflict_prefer("filter", "dplyr")
conflict_prefer("lag", "dplyr")

但是如果你愿意,你可以使用 * package::funcion()* 格式来编写代码,例如:dplyr::filter()dplyr::lag()

相关问题