2016-05-12 37 views
0

我有两个矩阵df_matrixdf_subset。一个是另一个的子集。因此,df_matrix具有10000行和列,df_subset仅包含8222列和df_matrix行。基于列名称提取不存在于另一个矩阵中的列

我想从df_matrix不在df_subset只选择那些。我认为这是最好的列名,所以我试图执行此代码:

newdf <- df_matrix[, which((colnames(df_matrix)) != (colnames(KroneckerProducts)))] 

但是,这根本不起作用。有没有其他方法可以做到这一点?

+2

在使用'%'%:'df_matrix [!,(colnames(df_matrix)%的%colnames(KroneckerProducts))]' – nicola

+0

@nicola:刚才说了同样的话:d – vasanthcullen

回答

4

一般规律是不使用==或!=与

使用%的%与不同长度的对象!

newdf <- df_matrix[, !(colnames(df_matrix) %in% colnames(KroneckerProducts))]