我有一个辅助函数(比如说foo()),将在各种数据框上运行,这些数据框可能包含特定的变量,也可能不包含。假设我有library(dplyr) d1 <- data_frame(taxon=1,model=2,z=3) d2 <- data_frame(taxon=2,pss=4,z...
我最近注意到rlang::sym在匿名函数中似乎不起作用,但我不明白为什么。这里是一个例子,它相当笨拙和丑陋,但我认为它说明了问题。 require(tidyverse) data <- tibble(x1 = letters[1:3], x2 = let...
我希望在一个函数内使用传递为参数的名称来重命名列。基本上,我有一个函数。produce_data_frame <- function(name) { return(iris) } 我希望这个函数可以将Sepal.length列的名称更改为“name”(其中“name”取决于变量名)。...
我正在尝试创建一个函数,它会根据列的位置选择DF中的列。我总是需要第一列,然后是DF的子集。每个需要选择的子集都有一个对象。 到目前为止,我尝试过以下方法:position <- "1,28:31" DF %>% select_(.dots = position) 但是我收到...
aes_string 曾经有一些方便的行为,我在使用 ggplot2 进行编程时用到了它。但是自从ggplot2版本3.4.0以来,aes_string 已被弃用。我正在努力寻找如何很好地替换它。 具体而言,我之前创建了函数,通过省略号接受任意字符串参数,并通过 do.call 将其传递给 ...
我试图尽可能简单地表达这个意思。 一些样本数据: library(magrittr) library(dplyr) library(rlang) # sample data tib <- tibble( a = 1:3, b = 4:6, c = 7:9 ) 现在有...
在下面的示例中,为什么我们应该更喜欢使用f1而不是f2?在某种意义上,它是否更有效率?对于习惯于基础R的人来说,使用“substitute + eval”选项似乎更自然。 为什么我们应该更喜欢使用f1而不是f2?在某种意义上,它是否更有效率?对于习惯于基础R的人来说,使用“substitu...