r-有没有一种方法可以改变函数(如粘贴)中参数的顺序,使其与管道操作符兼容



我有一长串使用管道的代码,这些代码以要提交到paste((的参数结尾。Smth像这个

"string1" %>% paste ("string2", sep = "_")

结果是";字符串1_字符串2";。然而,我希望";string2_string1";。除了保存变量和运行新命令之外,还有什么解决方案吗?stringr包中有解决方案吗?

我们可以使用base R(R 4.1.0(

"string1" |>
{(x) paste("string2", x, sep = "_")}()
[1] "string2_string1"

您可以使用.作为管道值的占位符。

"string1" %>% paste("string2", ., sep = "_")
#[1] "string2_string1"

同样适用于stringr::str_c-

"string1" %>% stringr::str_c("string2", ., sep = "_")
#[1] "string2_string1"

最新更新