gpt4 book ai didi

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

转载 作者:行者123 更新时间:2023-12-03 13:51:25 24 4
gpt4 key购买 nike

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

最佳答案

您可以使用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

关于r - 使用dplyr重命名带有后缀的所有列名(列出的列名除外)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50682193/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com