我有一个list
。data.frames
每个data.frame
都不是很大~150,000 行。但我的清单有 1000 多个这样的data.frames
.
一个data.frame
看起来像:
comp <- read.table(text = " G T H S B
1 1 1 1 x1
1 1 1 2 x2
1 2 6 1 x3
1 2 6 2 x4
2 1 7 1 x1
2 2 8 2 x2
2 2 8 1 x1
2 3 9 2 x2",header=TRUE,stringsAsFactors=FALSE)
所以一个列表是:
complist <- list(comp,comp,comp)
我想知道 for each data.frame
, ( ), for each in each in each的comp
长度。B
S
H
T
G
所以对于我的小练习,我使用:
library(plyr)
listresults <- lapply(complist, function(x) {
res <- ddply(x, .(G,T,H,S),
function(z) data.frame(resultcol = length(z$B)) )
} )
但是在我更大的列表中,这很长,有人可以帮我找到更快的方法吗?Aggregate
不是这里的选择,而且我一直未能sapply(split))
找到ddply
. 即使不是实际代码的建议也会对我有帮助。