例如, M 是一个稀疏矩阵,track_list 是矩阵的列名。
library(Matrix)
M <- Matrix(0,nrow = 3,ncol = 4)
M[1,2] = 1
M[2,3] = 1
M[3,2] = 1
track_list = c('a','b','c','d')
colnames(M) = track_list
col_tmp <- M@p[-1] - M@p[-length(M@p)]
M <- M[,col_tmp!=0]
track_list = track_list[col_tmp!=0]
结果将是:
> M
3 x 2 sparse Matrix of class "dgCMatrix"
b c
[1,] 1 .
[2,] . 1
[3,] 1 .
但是,设计很丑。那么该怎么做呢?
谢谢你 。