按R中另一列中的值聚合多个列
我有一个数据框(sp.table),包含31列,顶部有物种名称,包含不同样本中该物种的丰度数据。我还有一个Cruise列,其中包含用于记录样本的巡航的巡航ID。我想按Cruise聚合每一列,这样我就有了相同数量的列,但行数更少 我试过:按R中另一列中的值聚合多个列,r,R,我有一个数据框(sp.table),包含31列,顶部有物种名称,包含不同样本中该物种的丰度数据。我还有一个Cruise列,其中包含用于记录样本的巡航的巡航ID。我想按Cruise聚合每一列,这样我就有了相同数量的列,但行数更少 我试过: a <- aggregate(sp.table[,1:31]~ sp.table$Cruise), FUN = sum) a如果只有32列,下面的代码应该可以工作 res1 <- aggregate(.~Cruise, sp.table, FUN
a <- aggregate(sp.table[,1:31]~ sp.table$Cruise), FUN = sum)
a如果只有32列,下面的代码应该可以工作
res1 <- aggregate(.~Cruise, sp.table, FUN=sum)
在这种情况下,总和
仅用于列的子集
resSub <- aggregate(cbind(X1,X2)~Cruise,sp.table, FUN = sum)
resSub最好实际发布数据样本,而不是描述它。
res3 <- aggregate(.~Cruise, sp.table,
FUN=sum, na.rm=TRUE, na.action=na.pass)
resSub <- aggregate(cbind(X1,X2)~Cruise,sp.table, FUN = sum)
set.seed(24)
sp.table <- data.frame(matrix(sample(1:20, 31*10, replace=TRUE),
ncol=31), Cruise=LETTERS[1:2], stringsAsFactors=FALSE)