我有一个矩阵或具有特定列名称的数据帧。使用包含一些列名称的矢量,我可以轻松地处理矩阵的这些列。但有也解决对面列,未在载体中列出一个简单的方法:如何选择R中与列/行名称相反的列/行?
mat <- matrix(c(1:12), ncol=4)
colnames(mat) <- c("a", "b", "c", "d")
not_target_col <- c("a", "b")
在这种情况下,我喜欢有列
c
和
d
。 我搜索这样的事情,不使额外的步骤:
pos <- colnames(mat) != not_target_col
mat[,pos]
附加说明
我想更清楚:如果我有一个数字矢量,我可以得到相反的,当我添加*-1
not_target_col <- c(1,2)
mat[,not_target_col * -1]
当我使用逻辑向量时,还有一种像这样的技术。在这里,我只需要添加一个!
。
not_target_col <- c(T,T,F,F)
mat[,!not_target_col]
@akrun definitly,我现在怎么办? –
你无能为力。有人会对它进行标记 – akrun
我在下面添加了另一个解决方案 – akrun