【发布时间】:2013-11-28 08:42:09
【问题描述】:
我正在尝试创建一个新的数据框列并在 for 循环中为其分配值。
具体来说,我有一个数据框名称列表,我正在一个一个地循环这个列表。对于每个名称,我想为该数据框创建一个列$location,并且我想为其分配一个值。为简单起见,假设我想分配它NA。下面的代码解释了我正在尝试做的事情。但是,当我运行它时,我收到错误Error in assign(get(name)$location, NA) : invalid first argument
names<-c("europe", "africa", "asia")
# where each of the strings in `names` is the name of an existing data frame object
# for sake of example, code is provided below to create example data frame objects
x <- c(2,6,7)
y <- c(40, 42, 14)
europe <- data.frame(x,y)
africa <- data.frame(x,y)
asia <- data.frame(x,y)
for (name in names) {
assign(get(name)$location, NA)
}
我的目标是在我的每个数据框中获得一个名为 location 的新列。我不知道如何纠正这个或为什么会发生。任何帮助将不胜感激。
【问题讨论】:
标签: r