我有一个数据框,已经有df许多列数据.我有一个矢量namevector,充满了字符串.我需要添加空列df以及列的名称namevector.
我试图用这个for循环添加列,迭代每个字符串namevector.
for (i in length(namevector)) {
df[, i] <- NA
}
Run Code Online (Sandbox Code Playgroud)
但是我留下了这个错误:
Run Code Online (Sandbox Code Playgroud)Error in `[<-.data.frame`(`*tmp*`, , i, value = NA) : new columns would leave holes after existing columns
或者,我曾想过用正确的名称创建一个空数据帧,然后cbind将两个数据帧放在一起,但我不知道如何编写这个.
我该如何解决这个问题?
我有以下数据帧和向量:
ddf = data.frame(a=rep(1,10), b=rep(2,10))
xx = c("c", "d", "e", "f")
Run Code Online (Sandbox Code Playgroud)
如何使用xx中的项目命名的新空列?
我试过以下但它不起作用:
ddf = cbind(ddf, data.frame(xx))
Error in data.frame(..., check.names = FALSE) :
arguments imply differing number of rows: 10, 4
Run Code Online (Sandbox Code Playgroud)
以下也不起作用:
for(i in 1:length(xx)){
ddf$(xx[i]) = ""
}
Error: unexpected '(' in:
"for(i in 1:length(xx)){
ddf$("
}
Error: unexpected '}' in "}"
Run Code Online (Sandbox Code Playgroud)