考虑以下代码:
library(dplyr)
a = data.frame(a = 1:3)
abc = \(x) data.frame(x/2, x/3)
a %>%
mutate(abc(a))
返回
a x.2 x.3
1 1 0.5 0.3333333
2 2 1.0 0.6666667
3 3 1.5 1.0000000
但我无法控制名称,因为我想为它们分配其他名称。
解决这个问题的一种方法是将返回类型abc
命名为,但这并不理想,因为我可能想要abc
在两组变量上运行
a %>%
mutate(abc(a), abc(b))
另一种方法当然是rename
在每次运行后都进行,abc
但这可能会不稳定。
有没有办法给输出命名abc
?例如
a %>%
mutate(c("a1","a2") := abc(a), c("b1","b2") := abc(b))
但上述:=
语法不起作用。