如何用colnames()一行代码重命名R语言数据框中不相邻的列?
使用colnames()一行重命名不相邻列的方案
初始数据框定义:
df <- data.frame(x = 1:2, y = 3:4, z = 5:6)
要通过一行代码用colnames()重命名不相邻的x和z列,可以借助match()函数定位目标列的位置,代码如下:
colnames(df)[match(c("x", "z"), colnames(df))] <- c("new_x", "new_z")
说明
match(c("x", "z"), colnames(df))会返回x和z在列名向量中的索引位置(此处为c(1,3)),通过这个索引对colnames(df)的对应位置赋值新名称,就能精准修改指定的不相邻列,完全满足仅使用colnames()的需求。
内容的提问来源于stack exchange,提问作者Omar Velazquez
相关产品推荐
相关产品推荐

