热门标签 | HotTags
当前位置:  开发笔记 > 前端 > 正文

使用dplyr重命名带有后缀的所有列名(列出的列名除外)?

如何解决《使用dplyr重命名带有后缀的所有列名(列出的列名除外)?》经验,为你挑选了1个好方法。

我希望这是一个简单的问题。我如何重命名带有后缀“ _2017”的数据集中的所有列标题名称,但前两个列标题为“ Name”和“ State”除外?我想用dplyr做到这一点。



1> Psidom..:

您可以使用辅助方法使用rename_at和排除列vars

df <- data.frame(Name = c('a', 'b'), State = c('c', 'd'), col1 = 1:2, col2 = 3:4)
df
#  Name State col1 col2
#1    a     c    1    3
#2    b     d    2    4

用硬编码名称排除:

df %>% rename_at(vars(-Name, -State), ~ paste0(., '_2017'))
#  Name State col1_2017 col2_2017
#1    a     c         1         3
#2    b     d         2         4

按列位置排除:

df %>% rename_at(vars(-(1:2)), ~ paste0(., '_2017'))
#  Name State col1_2017 col2_2017
#1    a     c         1         3
#2    b     d         2         4

按存储在变量中的列名排除:

to_exclude = c('Name', 'State')
df %>% rename_at(vars(-one_of(to_exclude)), ~ paste0(., '_2017'))
#  Name State col1_2017 col2_2017
#1    a     c         1         3
#2    b     d         2         4


推荐阅读
author-avatar
王先生
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有