R中具有相同功能名称的库似乎非常烦人。解决以下问题的最简单方法是什么?
Attaching package: ‘dplyr’
The following objects are masked from ‘package:stats’:
filter, lag
The following objects are masked from ‘package:base’:
intersect, setdiff, setequal, union
添加library(stats)
或将过滤器功能调用为stats::filter
,而下面显示的其他功能对我来说无效。
library(ggplot2)
library(dplyr)
library(stats)
stats::filter
stats::lag
base::union
base::setdiff
base::setequal
base::intersect
# Reading in the data
data <- read.csv("data.csv", header = FALSE)
# Plots
dataSummary <- data %>% group_by(id) %>% summarise(data_count = x())
dataSummary
plotTest <- ggplot(dataSummary, aes(id, data_count)) + geom_bar(stat = 'identity') + ggtitle("Test Title")
plot(plotTest)
但是在执行绘图功能之前,这会继续发出上一条警告消息。有什么指针吗?或者无论如何要抑制这些警告并进行绘图?
答案 0 :(得分:14)
如果您不想显示警告,请通过
加载包裹library(dplyr, warn.conflicts = FALSE)
然而,主要的缺点是它只是隐藏了问题,它并没有停止执行。如果您需要实际使用其中一个蒙版函数,可以像stats::lag
(@alistaire)一样调用它。
不要使用掩盖基本功能的包。运行example("filter")
(比如说)的一般想法是在加载包后给出不同的答案anti-social
。
一些包&#34;改进&#34;基本功能,因此屏蔽不是问题。
加载包裹的顺序很重要。首先加载的包是 首先在搜索路径中,如果您正在使用已经存在的函数 蒙面。有关见解,请参阅this answer。
这个答案试图总结将要(最终)删除的许多评论。