如何在R中按行名汇总矩阵列?
要按行名汇总矩阵列,我们可以将colSums与sapply一起使用并转置输出。例如,如果我们有一个名为M的矩阵,则可以使用t(sapply(by(Mrownames(M),,colSums),identity))完成按行名称汇总的矩阵列。
例1
考虑下面的矩阵-
> M1<-matrix(rpois(40,2),ncol=2)
> rownames(M1)<-sample(c("A","B","C","D"),20,replace=TRUE)
> M1输出结果[,1] [,2] B 4 6 D 2 1 B 1 5 C 0 0 A 2 3 B 1 0 B 5 3 D 1 3 C 0 1 C 0 2 D 1 1 B 7 2 C 2 3 C 2 3 C 2 2 C 1 2 B 1 1 C 5 3 D 2 2 D 5 2
通过行名查找M1的集合-
> t(sapply(by(M1,rownames(M1),colSums),identity))输出结果
V1 V2 A 2 3 B 19 17 C 12 16 D 11 9
例2
> M2<-matrix(rpois(40,10),ncol=2)
> rownames(M2)<-sample(c("S1","S2","S3"),20,replace=TRUE)
> M2输出结果[,1] [,2] S1 6 10 S3 7 11 S3 13 6 S1 9 9 S2 11 9 S3 6 8 S1 4 5 S3 8 12 S2 14 8 S3 11 7 S1 15 12 S3 8 13 S3 9 10 S1 10 8 S2 14 18 S1 13 10 S1 10 4 S3 12 7 S2 5 9 S3 13 8
通过行名找到M2的集合-
> t(sapply(by(M2,rownames(M2),colSums),identity))输出结果
V1 V2 S1 67 58 S2 44 44 S3 87 82
热门推荐
10 儿子立冬祝福语简短独特
11 对当兵的祝福语简短
12 侄儿高考试祝福语简短
13 伴郎红包祝福语朋友简短
14 媳妇生日简短祝福语朋友
15 公司年会祝福语简短最好
16 元旦感恩祝福语简短大全
17 红包祝福语简短10字
18 周六早晨祝福语简短