假设我有一个简单的数据框:
df <- data.frame("one"= c(1:5), "two" = c(6:10), "three" =c(7:11))
我想重命名我的列名,以便它们与引用匹配 让我的参考如下:
df2 <- data.frame("Name" = c("A", "B", "C"), "Oldname" = c("one", "two", "three"))
我如何将df中的列名替换为来自df2的列名,如果它们与那里的匹配(那么df中的列名是:A,B C)?
在我的原始数据中,df2更大,我有多个数据集,例如df,因此为了使解决方案起作用,代码应该尽可能通用。提前致谢!
答案 0 :(得分:1)
我们可以使用此处的match
函数将新名称映射到旧名称:
names(df) <- df2$Name[match(names(df), df2$Oldname)]
names(df)
[1] "A" "B" "C"