在R中子集S4矩阵

阿比盖尔575

我有一个[4 x 5]矩阵,我将其命名为T2:

T2 <- new("dgTMatrix",
      i = as.integer(c(1,1,0,3,3)),
      j = as.integer(c(2,2,4,0,0)), x=10*1:5, Dim=4:5)

colnames(T2) <- c("Anthony", "Benjamin", "Clara", "Dexter", "Elise")



abc <- data.frame(c("Anthony", "Benjamin"))
colnames(abc) <- c("Names")

我想将其子集以获得[4 x 2]矩阵:

T2.s1 <- subset.matrix(T2, colnames(T2) %in% abc$Names)

有人知道为什么这行不通吗?

非常感谢,

阿比盖尔

笨狼

它不是data.frame,因此不能使用子集,并且sparseMatrix没有子集方法。

只需像对矩阵一样对其进行子集化:

 T2[,colnames(T2) %in% abc$Names]
4 x 2 sparse Matrix of class "dgTMatrix"
     Anthony Benjamin
[1,]       .        .
[2,]       .        .
[3,]       .        .
[4,]      90        .

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章