2017-08-01 140 views
1

我想要在for循环中更新对象名称(字符数据),但我不确定如何将索引变量追加到字符数据中。我本来希望工作(显然是不正确)的代码是:for循环中的字符数据(R)

for(i in 1:5){ 
name.i <- i 
} 

预期的输出将等同于以下内容:

name.1 <- 1 
name.2 <- 2 
name.3 <- 3 
name.4 <- 4 
name.5 <- 5 

我什至不知道这个问题会是什么叫---请让我知道(如果你知道),以便我可以适当地标题未来的问题。

延长

说,工作代码产生的不是数字的载体,但我们需要一个for循环,通过每个name.i载体的循环,并改变了他们的作品之一。我们如何在这个for循环中将i的索引保存在name.i中?也就是说,怎么可能一个凝结了以下内容:

for(i in 1:5){ 
assign(paste0("name.", i), c(i, 0, 0)) 
} 

name.1[2] <- 1 + 1 
name.2[2] <- 2 + 1 
name.3[2] <- 3 + 1 
name.4[2] <- 4 + 1 
name.5[2] <- 5 + 1 

当然,在原来的for循环的第二个条目可以被设置为i+1,但我理解有趣如何以这种方式使用的字符名称--- 即通过使用索引参数遍历名称,尽管名称本身是字符数据(如果可能的话)。

回答

3
for(i in 1:5){ 
assign(paste0('name.',i), i) 
} 
+0

这是完美的,谢谢!我已经扩展了这个问题---如果你也知道如何做到这一点,你的帮助将不胜感激。 –