想象一下我们有:
X <- 1:4
names(X) <- c("A" ,"B" , "C", "D")
我想在全局环境中创建四个对象,A,B,C,D,每个对象具有相应的值1,2,3,4。我假设解决方案涉及分配和应用函数,但希望有人在这里可以想出比我更好的东西。
(上下文:我想创建一种基于命名字符向量的伪制作文件,其中名称是我想要创建的对象的名称,值是csv文件的名称和位置我希望用...填充每个对象。上面的玩具示例是向前迈出的一步。)
答案 0 :(得分:3)
您可以使用list2env
:
list2env(as.list(X),.GlobalEnv)
当然,正如评论中所提到的,使用分离的全局变量并使全局环境混乱不是一个好习惯。 R方式是将变量保存在列表或向量中,并使用xxapply
族函数来操作每个向量元素。
答案 1 :(得分:3)
试试这样:
for(i in seq_along(x)){
assign(names(x)[i],x[i])
}