在需要函数的参数中使用 r 变量

Using an r variable in a parameter that expects a function

我有一个遍历列名称的循环,其中 returns 是一个可变字符。我想在需要函数的参数中使用变量。

不工作

i = "Cooling"
temp = phyloseq_to_deseq2(p2, ~i)}

有效

temp = phyloseq_to_deseq2(p2, ~Cooling)

不工作

temp = phyloseq_to_deseq2(p2, ~"Cooling")}

下面的问题突出了 str 引用不是函数中的 r 对象的问题。 Phyloseq_to_deseq2 需要 phyloseq 包。如何在需要参数函数的函数中使用变量?

R: specifying variable name in function parameter for a function of general (universal) use

感谢评论中的@joran。在包含 ~ 的字符串上使用函数 as.formula 将函数作为参数传递。

my_formula = as.formula("~Cooling")
temp = phyloseq_to_deseq2(p2, my_formula}