【发布时间】:2015-05-08 11:27:21
【问题描述】:
如果我像这样根据另一个向量y 中的类标签将我的数据矩阵分成几行,结果是这样的“名称”:
> X <- matrix(c(1,2,3,4,5,6,7,8),nrow=4,ncol=2)
> y <- c(1,3,1,3)
> X_split <- split(as.data.frame(X),y)
$`1`
V1 V2
1 1 5
3 3 7
$`3`
V1 V2
2 2 6
4 4 8
我想遍历结果并对每个矩阵进行一些操作,例如对元素求和或对列求和。如何在循环中访问每个矩阵,这样我才能做到这一点?
labels = names(X_split)
for (k in labels) {
# How do I get X_split[k] as a matrix?
sum_class = sum(X_split[k]) # Doesn't work
}
事实上,我根本不想处理数据帧和命名数组。有没有办法我可以在没有as.data.frame 的情况下调用split 并获取矩阵列表或类似的东西?
【问题讨论】:
标签: r