我有一个DF,我想在第二个位置添加一个名为"B"的新变量.
A C D
1 1 5 2
2 3 3 7
3 6 2 3
4 6 4 8
5 1 1 2
Run Code Online (Sandbox Code Playgroud)
有人有想法吗?
seb*_*n-c 10
最简单的方法是添加所需的列,然后重新排序:
dat$B <- 1:5
newdat <- dat[, c("A", "B", "C", "D")]
Run Code Online (Sandbox Code Playgroud)
其他方式:
newdat <- cbind(dat[1], B=1:5, dat[,2:3])
Run Code Online (Sandbox Code Playgroud)
如果你担心开销,也许是一个data.table解决方案?(在这个答案的帮助下):
library(data.table)
dattable <- data.table(dat)
dattable[,B:=1:5]
setcolorder(dattable, c("A", "B", "C", "D"))
Run Code Online (Sandbox Code Playgroud)