我似乎不能让filter函数与tidyverse的加载一起工作。我已经比较了代码,知道它是正确的,但每次我都会收到错误消息。我已经检查了多个在线资源,但似乎都没有帮助。我还更新了所有的包,并重新启动了它们。如有任何帮助,我们不胜感激!
这是我的代码:
library(tidyverse)
ggplot(data = mpg) +
geom_point(mapping = aes(x = displ, y = Hwy))
filter(mpg, cyl == 8)
filter(diamonds, carat > 3)错误:
library(tidyverse)
Error: package or namespace load failed for ‘tidyverse’ in loadNamespace(I,
c(lib.loc, .libPaths()), versionCheck = vI[[i]]):
namespace ‘rlang’ 0.4.2 is already loaded, but >= 0.4.3 is required
In addition: Warning message:
package ‘tidyverse’ was built under R version 3.6.3
filter(mpg, cyl == 8)
Error in filter(mpg, cyl == 8) : object 'cyl' not found
In addition: Warning messages:
1: In data.matrix(data) : NAs introduced by coercion
2: In data.matrix(data) : NAs introduced by coercion
3: In data.matrix(data) : NAs introduced by coercion
4: In data.matrix(data) : NAs introduced by coercion
5: In data.matrix(data) : NAs introduced by coercion
6: In data.matrix(data) : NAs introduced by coercion
filter(diamonds, carat > 3)
Error in filter(diamonds, carat > 3) : object 'carat' not found发布于 2020-04-18 00:39:29
您的问题是tidyverse没有加载到R会话中,所以当您调用filter时,它来自stats包,而不是dplyr。这就是为什么在R中使用名称空间(如dplyr::filter )是一种很好的实践,这样您就可以确切地知道要调用哪个函数。
要修复加载tidyverse时出现的错误,请更新rlang库:
update.packages()然后试一试
dplyr::filter(mtcars, cyl == 8)https://stackoverflow.com/questions/61276367
复制相似问题