如何修剪矩阵的列名?

时间:2014-06-05 20:59:12

标签: r

我有矩阵,列名有两部分,我只想保留第一部分。

>colnames(mymatrix)

[1] "AF|2312"       "BWDS|54"         "JFD|2111"

所以我只想在|

之前保留部分名称

如何在R?

中实现它?

2 个答案:

答案 0 :(得分:3)

另一种方法是使用strsplit(),一个正则表达式,用于“除了字母之外的所有内容”以分割向量,代码只保留第一部分:管道前面的字母(负数2)。

var  <- c("AF|2312", "BWDS|54", "JFD|2111")

var  <- sapply(strsplit(var, split = "\\W"), "[", -2)

var

答案 1 :(得分:2)

要删除管道及其后的所有内容,请使用

colnames(mymatrix) <- gsub("\\|.*","", colnames(mymatrix))