【发布时间】:2025-12-03 18:05:03
【问题描述】:
我想将函数myfoo应用于数据帧mydf中两列的所有可能组合,并以矩阵格式myoutput获得结果。
考虑以下数据框,
# Example dataframe
mydf <- data.frame(var1 = 1:10, var2 = 11:20, var3 = 21:30)
head(mydf)
# var1 var2 var3
# 1 11 21
# 2 12 22
# 3 13 23
# 4 14 24
# 5 15 25
我想将以下函数应用于两列的每个可能组合,
# Example function
myfoo <- function(varA, varB) sum(varA * varB)
myfoo(var1, var2)
# [1] 935
为了得到这个输出。
# Desired output
myoutput <- matrix(c(0, 935, 1485, 935, 0, 4035, 1485, 4035, 0), 3, dimnames = list(names(mydf), names(mydf)))
myoutput
# var1 var2 var3
# var1 0 935 1485
# var2 935 0 4035
# var3 1485 4035 0
【问题讨论】:
标签: r dataframe multiple-columns apply