我有一个字符串向量
x<-c('a','b')
我有一个多列的矩阵;其中包含该字符串向量中的名称。我想获得与其名称匹配的列号/索引。
which(colnames(sample_matrix) == x)
当 x 不是向量而是单个元素时,上述方法有效。有什么解决办法吗?
我有一个字符串向量
x<-c('a','b')
我有一个多列的矩阵;其中包含该字符串向量中的名称。我想获得与其名称匹配的列号/索引。
which(colnames(sample_matrix) == x)
当 x 不是向量而是单个元素时,上述方法有效。有什么解决办法吗?
尝试
which(colnames(sample_matrix) %in% x)
您正在寻找的是%in%
:
which(colnames(sample_matrix) %in% x)
或者,或者,match
match(x, colnames(sample_matrix))
还:
grep("^a$|^b$", colnames(sample_matrix) )
使用 grep 通常比测试是否存在于一串值中更通用。您可以获得与模式匹配的所有项目,例如所有以“a”开头的名称。