我想在R中将一个函数映射到数据框中每个变量的组合对,返回每个组合对的函数输出的数据框。我可以这样手动完成:
library(tidyverse)
df <- tibble(a = c(1, 2), b = c(4, 3), c = c(5, 7))
f <- function(a, b) a - b # a simple function for sake of example
df %>% transmute(a_minus_b = f(a, b),
a_minus_c = f(a, c),
b_minus_c = f(b, c),
b_minus_a = f(b, a),
c_minus_a = f(c, a),
c_minus_b = f(c, b))
手动完成这个操作显然对于一个包含很多变量的数据框来说是不切实际的。 我应该如何使用迭代将我的函数应用于每一组变量组合?