9得票2回答
dplyr 0.7中已弃用的mutate_的等效替代方案是什么?

我在 dplyr 0.7 中找不到替代即将被弃用的 mutate_ 函数的方法。 mutate_ 函数在我的使用场景中非常有用:我将许多指令(以字符串格式)存储在数据库中(如果需要,可以进行过滤),并将这些指令应用于一个或多个数据框。 例如: dplyr::tibble(test = "...

9得票2回答
R中的quo_name等价于quos。

你好,在阅读 dplyr 编程 中,我注意到可以使用 quo_name 添加名称。我想知道如何为多个列实现这样的操作,例如类似于 quos_name。例如: my_mutate <- function(df, expr) { expr <- enquo(expr) mea...

9得票1回答
在被 `magrittr` 管道调用的函数中获取计算为“点”(`.`)的表达式

我有一个函数x_expression(),它会打印传递给参数x的表达式。 pacman::p_load(magrittr, rlang) x_expression <- function(x) { print(enquo(x)) } y <- 1 x_expressio...

9得票6回答
在 mutate 中使用引号:一个替代 mutate_(.dots = ...) 的方法

我希望将不同的函数应用于tibble中的同一列。这些函数被存储在一个字符字符串中。我以前使用mutate_和.dots参数来实现,像这样: library(dplyr) myfuns <- c(f1 = "a^2", f2 = "exp(a)", f3 = "sqrt(a)") ti...

9得票1回答
了解在函数中何时使用ensym、sym和enquo

我正在努力理解quo/unquo语法的不同之处,以及何时应该使用每种语法。 我主要编写将数据框和列作为参数传递的函数--使用ggplot绘图或使用dplyr(group_by、summarize、mutate等)进行汇总/操作数据。 但是,偶尔我也必须在我的整体函数中使用不使用NSE的函数。...

9得票6回答
dplyr和tidyr - 如何使用动态条件生成case_when?

有没有一种方法可以动态/以编程方式生成具有不同列名称和/或不同条件数量的 dplyr 中的 case_when 条件?我有一个交互式脚本,正在尝试将其转换为函数。在 case_when 语句中有很多重复的代码,我想知道是否可以在不需要再次从头编写所有内容的情况下自动化处理。 这是一个虚拟数据...

8得票1回答
基于quosure命名新变量

我正在尝试编写自定义函数,它将根据预定义的变量向量(例如vector_heavy)的值计算一个新变量,然后根据函数提供的参数(例如custom_name)命名新变量。 这种变量命名是我的quosure技巧让我失望的地方。非常感谢任何帮助。 library(tidyverse) vecto...

8得票2回答
使用dplyr进行函数式编程

我希望能够使用dplyr中的非标准评估方式更有效/优雅地传递多个参数给group-by函数。我不想使用...运算符,而是要单独指定函数。 我的具体用例是一个函数,它接受一个数据框并创建一个具有更简单语法的ggplot对象。以下是我想要使用我的函数自动化的代码示例: # create dat...

8得票4回答
R包更新

我在使用R中的一个软件包时,遇到了一些问题。 在运行数据分析工作流程时,出现了以下错误信息: library(dplyr) Error: package or namespace load failed for ‘dplyr’ in loadNamespace(i, c(lib.lo...

8得票5回答
ggplot2无法加载,出现“rlang”包错误。

这是错误信息: 错误:加载‘ggplot2’包或命名空间失败,因为在loadNamespace(i,c(lib.loc,.libPaths()),versionCheck = vI [[i]])时加载了命名空间‘rlang’0.3.4,但需要> = 0.4.0 另外还有一个警告...