如何从R矩阵中删除按名称的列?

时间:2018-11-06 00:49:13

标签: r

我知道如何按名称从R数据框中删除列,但是我不知道如何在矩阵中执行此操作。我想做这样的事情:

> m <- matrix(1:6, nrow=2, ncol = 3)
> colnames(m) <- c("q", "w", "e")
> m
     q w e
[1,] 1 3 5
[2,] 2 4 6
> variable_to_remove <- "q"
> m[,variable_to_remove] <- NULL
Error in m[, variable_to_remove] <- NULL : 
number of items to replace is not a multiple of replacement length

重要的是,我需要使用“ variable_to_remove”,它是一个字符串。 一段时间后,我发现subset()完成了此操作:

> subset(m, select=-c(get(variable_to_remove)))
     w e
[1,] 3 5
[2,] 4 6

我真的不喜欢使用get(),eval(),parse()等函数。有没有更简单更好的方法呢?

0 个答案:

没有答案