【发布时间】:2014-01-04 09:07:36
【问题描述】:
假设我们有一个数字 data.frame foo 并希望找到每两列的总和:
foo <- data.frame(x=1:5,y=4:8,z=10:14, w=8:4)
bar <- combn(colnames(foo), 2, function(x) foo[,x[1]] + foo[,x[2]])
bar
# [,1] [,2] [,3] [,4] [,5] [,6]
#[1,] 5 11 9 14 12 18
#[2,] 7 13 9 16 12 18
#[3,] 9 15 9 18 12 18
#[4,] 11 17 9 20 12 18
#[5,] 13 19 9 22 12 18
一切都很好,除了bar 中缺少的列名。我希望bar 的列名显示foo 中的相关列,例如在此示例中:
colnames(bar) <- apply(combn(colnames(foo),2), 2, paste0,collapse="")
colnames(bar)
#[1] "xy" "xz" "xw" "yz" "yw" "zw"
这很简单,但我想在同一 bar <- combn(...) 命令中执行列标签。到底有没有?
【问题讨论】:
标签: r function dataframe apply combn