我有显示前 5 行的数据帧 DATA:
>dput(DATA)
structure(list(e_1 = c(21.8, 21.8, 21.8, 21.8, 21.8),
e_2 = c(9.8, 9.8, 9.8, 9.8, 9.8), e_3 = c(-2.2, -2.2, -2.2,
-2.2, -2.2), e_4 = c(-14.2, -14.2, -14.2, -14.2, -14.2),
e_5 = c(0, 0, 0, 0, 0)), row.names = c(NA, 5L), class = "data.frame")
我想用来combn
获取跨列的数据框的三列的所有组合的总和。我使用以下内容:
library(utils)
combn(DATA,3,sum)
结果是所有行,我得到:
[1] 147 87 158 27 98 38 -33 38 -22 -82
所需的输出与数据帧 DATA 的行数相同。对于每一行,给出 DATA 中 5 列中的 3 列的所有可能组合中的值的总和。如:
[1] 29.4 17.4 31.6 5.4 19.6 7.6 -6.6 7.6 -4.4 -16.4
[11] 29.4 17.4 31.6 5.4 19.6 7.6 -6.6 7.6 -4.4 -16.4
[21] 29.4 17.4 31.6 5.4 19.6 7.6 -6.6 7.6 -4.4 -16.4
[31] 29.4 17.4 31.6 5.4 19.6 7.6 -6.6 7.6 -4.4 -16.4
[41] 29.4 17.4 31.6 5.4 19.6 7.6 -6.6 7.6 -4.4 -16.4