在rep()for循环中包含text和variable

时间:2017-03-25 16:08:26

标签: r for-loop rep

尝试为我的数据分配分类器时遇到一些麻烦。我有500行数据,我想将“城市1”,“城市2”等分配给“城市5​​0”。并重复每一次10次。所以它应该有“城市1”10次,然后“城市2”10次,直到“城市50”10次。在我努力的地方是在引号中使用文本以及在rep()的相同参数中使用变量调用。

for (j in 1:50)
{
City<-rep(paste("City",j),1,each=10)
}

我的输出只是“城市50”的列表10次。我不太清楚为什么会这样。

2 个答案:

答案 0 :(得分:3)

由于reppaste都是矢量化的,所以可以在没有任何循环的情况下完成

rep(paste("City", 1:50), each = 10)

答案 1 :(得分:1)

akrun是正确的,这是一种更容易的方式来做你想要的。但是如果你想保持循环,你必须在分配值时按城市[j]索引。发生了什么是你的循环正如所写的那样正确运行。您看到的输出是最后一次迭代。在编写循环的方式中(没有索引城市),您将为每个j

值替换city的值