我可以使用dplyr这样重命名列:
mtcars %>% dplyr::rename('cylinder'=cyl)
但是,如果我想通过编程方式像下面这样更改列名:
cnames=c('cylinder', 'mile_per_gallon')
mtcars %>% dplyr::rename(cnames[1]=cyl)
# or like this
mtcars %>% dplyr::rename( !!sym(cnames[1])=cyl)
我收到了错误信息:
Error: unexpected '=' in "mtcars %>% dplyr::rename(cnames[1]="
我不明白为什么会发生这种情况。有人知道如何让它工作吗?谢谢。
:=
而不是=
。 - joran!!
。在这种情况下,:=
仅在左侧赋值时发生引用操作时才需要。 - joran