通过引用R

时间:2017-06-21 08:54:14

标签: r

我想通过引用表来替换列名。

以下是我的问题。

data <- read.table(textConnection("
     a b c d e
row1 1 2 3 4 5
 "), header = TRUE)


Newtitle <- read.table(textConnection("
id   id2
 a  kitty
 d  oren
 g  dyron
 "), header = TRUE)

如果Newtitle $ id与数据中的列名匹配,

然后我想用Newtitle $ id2替换数据的列名,否则只保留原始列名。

    kitty b c oren e
row1    1 2 3    4 5

有任何提示吗?

1 个答案:

答案 0 :(得分:1)

需要注意因素和字符之间的区别。

Newtitle$id <- as.character(Newtitle$id)
Newtitle$id2 <- as.character(Newtitle$id2)
rownames(Newtitle) <- Newtitle$id
replaced <- names(data) %in% Newtitle$id
names(data)[replaced] <- Newtitle[names(data)[replaced], "id2"]
相关问题