r - 从 rlang 0.3.0 和 mutate_impl 起已失效

标签 r rlang

我正在尝试使用以下功能,但每次这样做时,我都会收到以下错误。我尝试安装旧版本的 rlang,因为它可以在不同的 R Studio 上运行,但我无法做到这一点。看来错误是由于 0.3.0 版本造成的。任何有关如何修复此错误的建议将不胜感激。

details2 <-
   details %>%
   mutate(rownames=rownames(.)) %>%
   filter(isdir==FALSE) %>%
   arrange(desc(ctime))

Error in mutate_impl(.data, dots) : 
  Evaluation error: `as_dictionary()` is defunct as of rlang 0.3.0.
Please use `as_data_pronoun()` instead.

最佳答案

为了解决 docker 容器中的这个问题,我最终不得不使用 devtools::install_version(..., dep = FALSE)安装旧版本 rlang并手动安装我需要的包的所有依赖项,例如 dplyr

只需安装dplyr将安装(或更新)到最新版本 rlang发布了0.3.02018-10-22据 CRAN 报道。虽然我还没弄清楚rlang改变了什么和as_dictionary ,这是当前的解决方法。

虽然这很痛苦,但确实有效。 要查找特定包的所有导入,您可以使用 as.data.frame(installed.packages())并过滤您感兴趣的特定包名称。列名称为 Imports .

编辑:
虽然我自己没有测试过,但是我在网上找到的另一个解决方案是将dplyr升级到0.7.7 .

关于r - 从 rlang 0.3.0 和 mutate_impl 起已失效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52957136/

相关文章:

r - 如何对除某些变量之外的所有变量进行分组并为每个观察添加一个组 ID

R如何使用带有filter或filter_的curl curl?

r - 从 R 中的数据框/矩阵中选择一列时保留列名称

使用日期和时间值读取 xlsx 中的字符串列

R:计算不规则的1分钟时间序列中的1小时平均值

r - R:将列表元素从函数输入转换为表达式

r - 使用带有 `rlang` 函数的 `dplyr::_join` quasiquotation

r - 避免RStudio在保存时执行代码

R rlang : use . x in map() with quosure?

r - 诊断为什么自定义函数会产生意外警告(关于position_jitterdodge)