我经常setNames
在magrittr管道或其他地方使用R 函数来动态修复对象的名称:
library(magrittr) mytable %>% setNames(c("col1", "col2", "col3")) %>% ...[more analysis]
colnames和rownames是否有相同的功能?有点像setColnames
?
magrittr
提供了几个"别名"(参见参考资料??Aliases
),包括set_colnames
(相当于`colnames<-`
)和set_rownames
(相当于`rownames<-`
).
它不漂亮,但以下工作:
mytable %>% `colnames<-`(c("col1", "col2", "col3")) %>% ...[more analysis]
这使用了一个事实,即表单的赋值colnames(x) <- foo
实际上是在调用一个函数`colnames<-`(x, foo)
.名称周围的反引号是必要的,因为colnames<-
它通常不是R中的有效标识符(但在反引号之间).
所以你不需要任何别名.