1
我想将列表中的所有矩阵相加。这里是什么,我试图做一个例子:将元素列表逐个添加到元素
## sets up the problem
m1 <- matrix(0,nrow=9,ncol=4)
row.pres <- lapply(1:4,function(x) seq(x,x+2))
m1.l <- lapply(1:4,function(y) {m1[row.pres[[y]],y] <- 1
return(m1)}
)
我要加起来的m1.l
所有元素来与尺寸相同它们中的每一个矩阵。这是我的解决方案:
test <- lapply(1:4,function(x) paste("m1.l[[",x,"]]",sep=''))
add.all <- paste(test,collapse="+")
eval(parse(text=add.all))
但是一定有更好的办法!也许通过do.call
?
不可思议!我从来没有听说过任何这些功能(减少,过滤等)非常有用!非常感谢! – AndrewMacDonald