【发布时间】:2012-04-28 03:14:32
【问题描述】:
我在一个数据框中有 5 列,我想将变量名称重命名为 Var1、Var2、Var3、Var4、Var5。
我目前的做法不是很方便:
names(mydata)[1:10] <- c("Var1", "Var2", "Var3", "Var4", "Var5")
有没有更好的方法,当我有 100 个变量时,我不必输入所有 100 个名称?
【问题讨论】:
我在一个数据框中有 5 列,我想将变量名称重命名为 Var1、Var2、Var3、Var4、Var5。
我目前的做法不是很方便:
names(mydata)[1:10] <- c("Var1", "Var2", "Var3", "Var4", "Var5")
有没有更好的方法,当我有 100 个变量时,我不必输入所有 100 个名称?
【问题讨论】:
names(mydata)[1:100] <- paste("Var", 1:100, sep="")
【讨论】:
paste0("Var", 1:100),输入更少(从 R 2.15 开始)
sprintf 函数非常适合:
names(mydata)[1:100] <- sprintf("Var%d", 1:100)
或
names(mydata)[1:100] <- sprintf("Var%03d", 1:100)
取决于您是否想要“Var1”、“Var2”、...或“Var001”、“Var002”、...等名称。
【讨论】: