我猜这对于经验丰富的用户来说很简单...如何使用变量的值将其指定为数据框列名?假设我有一个如下所示的简单数据框df,以及一个根据用户输入改变值的变量n。我怎么能插入一个新的数据框列,其名称的值为n?我还希望将n的值与一个简单的字符串连接起来。谢谢。
df<-data.frame(a=c(1,1,1),b=c(2,2,2))
a b
1 1 2
2 1 2
3 1 2
当我只是尝试将新列指定为
时n<-15
df$n<-c(3,3,3)
列的名称只是n。
a b n
1 1 2 3
2 1 2 3
3 1 2 3
答案 0 :(得分:3)
使用数字命名列不是最好的主意,但这可行:
df[,paste(n)] <- c(3,3,3)
答案 1 :(得分:2)
你也可以这样做:
df <- cbind(df,c(3,3,3))
names(df)[ncol(df)] <- n
虽然如前所述,将数字作为列名称是不好的做法。