【发布时间】:2013-08-15 09:10:22
【问题描述】:
我有一个数据框df,其中已经包含许多数据列。我有一个向量,namevector,里面满是字符串。我需要将空列添加到 df,并使用来自 namevector 的列名称。
我正在尝试使用此 for 循环添加列,迭代 namevector 中的每个字符串。
for (i in length(namevector)) {
df[, i] <- NA
}
但我留下了这个错误:
[<-.data.frame(*tmp*, , i, value = NA) 中的错误: 新列会在现有列之后留下孔
或者,我曾考虑创建一个具有正确名称的空数据框,然后 cbind- 将两个数据框放在一起,但不知道如何进行编码。
我将如何解决这个问题?
【问题讨论】:
-
我想你的意思可能是
seq_len(length(namevector))或类似的东西。 -
你的意思是
for (i in (seq_len(length(namevector)) + ncol(df))) ...然后更改列名。 -
@JamesPringle
seq_len(length(...))是seq_along()的长切 -
@JamesPringle 谢谢,我忘了添加偏移量,因为他们正在添加新列。
-
@rilkehayden 见 add_column()