r - Tidyverse 和 dplyr- 错误包或命名空间
问题描述
我似乎无法让过滤器功能与 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
解决方案
您的问题是tidyverse
没有被加载到您的 R 会话中,因此当您调用 时filter
,它来自stats
包而不是 dplyr。这就是为什么在 R 中使用命名空间是一种很好的做法,例如dplyr::filter
,这样您就可以准确地知道您正在调用哪个函数。
要修复加载 tidyverse 的错误,请更新 rlang
库:
update.packages()
然后尝试
dplyr::filter(mtcars, cyl == 8)
推荐阅读
- python - 导入 Pygame,ModuleNotFoundError: No module named 'pygame.base'
- c++ - 我如何创建一个函数(),其中一个参数是映射
- artificial-intelligence - K-means 如何确定特定纬度和经度附近的大多数位置
- java - Java 泛型有界通配符
- firebase - Firebase + Flutter + Web 没有数据
- javascript - 使用 fetch 和变量
- android - 在http拦截器中调用请求导致问题
- r - 添加行以对R中数据集中的每一列求和
- javascript - 如何在 Google Docs 中创建宏
- python - 从预测的类pytorch中获取概率