以下原则是否有更短的版本来重命名数据框的某些列?
data1<-data.frame("a"=1:3,"b"=1:3,"c"=1:3)
data1Names<-names(data1)
data1Names[data1Names=="a"]<-"hello"
data1Names[data1Names=="c"]<-"world"
names(data1)<-data1Names
The data.table
包有一个setnames
将起作用的函数data.frames
library(data.table)
data1<-data.frame("a"=1:3,"b"=1:3,"c"=1:3)
#setnames(data1, "a", "hello")
#setnames(data1, "c", "world")
# or in one step
setnames(data1, c("a", "c"), c("hello", "world"))
data1
# hello b world
#1 1 1 1
#2 2 2 2
#3 3 3 3
到目前为止的所有答案都将复制data.frame
. setnames
具有通过引用更改名称的额外好处,无需复制 data.frame.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)