我有两个稀疏矩阵,用于训练和测试集,我需要删除每个中不存在于另一个中的列 - 使两者中的列相同。目前我正在使用循环这样做,但我确信有一种更有效的方法来做到这一点:
# take out features in training set that are not in test
i<-0
for(feature in testmatrix@Dimnames[2][[1]]){
i<-i+1
if(!(feature %in% trainmatrix@Dimnames[2][[1]])){
removerows<-c(removerows, i)
}
}
testmatrix<-testmatrix[,-removerows]
# and vice versa...