R 基于向量重命名数据帧中的列

R 基于向量重命名数据帧中的列,r,dplyr,R,Dplyr,我能够做到这一点,但我想知道是否有一种更优雅的方式,可能是使用dplyr重命名 创建具有三个命名列的dataframe 结核抗体:3 x 3 >col1 col2 col3 > > 1 1 1 1 > 2 2 2 2 > 3 3 3 3 带替换名的命名向量 新名称col1 col3 >第1列第3列 重命名dataframe中的列 tb% 聚结ColnamesTB%>% setNamesobject=tb,nm=。

我能够做到这一点,但我想知道是否有一种更优雅的方式,可能是使用dplyr重命名

创建具有三个命名列的dataframe 结核抗体:3 x 3 >col1 col2 col3 > > 1 1 1 1 > 2 2 2 2 > 3 3 3 3 带替换名的命名向量 新名称col1 col3 >第1列第3列 重命名dataframe中的列 tb% 聚结ColnamesTB%>% setNamesobject=tb,nm=。 >一个tibble:3x3 >`Column 1`col2 Col3 > > 1 1 1 1 > 2 2 2 2 > 3 3 3 3 您可以在此处找到更多信息:

在这里:

管道操作符有点慢,所以在不需要的时候应该尽量避免使用它们。

namestb
# loading dplyr
pacman::p_load(dplyr)

# rename() syntax demands:
# LHS - a new column name
# RHS - an existing column name

# can be either a named vector or a named list
c('Column 1' = 'col1', 'Col3' = 'col3') -> x

# the unquote-splice (!!!) operator unquotes and splices its argument
rename(tibble(col1 = 1:3, col2 = 1:3, col3 = 1:3), !!!x)
#> # A tibble: 3 x 3
#>   `Column 1`  col2  Col3
#>        <int> <int> <int>
#> 1          1     1     1
#> 2          2     2     2
#> 3          3     3     3