在R

时间:2017-02-15 13:00:20

标签: r loops vector sequence

我在互联网上扫描了很多论坛,但找不到我的问题的明确答案,因此我决定在这里发布。我正在使用的程序是R。

以下问题是我无法找到解决方案的地方。我的任务是使用嵌套循环构造一个向量(1,2,2,3,3,3 ...,10,...,10)(所以没有rep())。到目前为止,我设法构建了所有元素的列表,但无法将其转换为所需的向量。我尝试过很多方法,比如将数据转换成矩阵并转置它等等。

到目前为止,还没有一种方法可行,或许对此事有更多见解的人可以帮助我。

这是我到目前为止所得到的:

for (i in 1:10){
  for (j in 1:10)
    if (j<=i)
    {
      x = c(i)
    print(x)
  }
}

为我提供:

[1] 1
[1] 2
[1] 2
[1] 3
[1] 3
[1] 3
[1] 4
[1] 4
[1] 4
[1] 4
[1] 5
[1] 5
[1] 5
[1] 5
[1] 5
[1] 6
[1] 6
[1] 6
[1] 6
[1] 6
[1] 6
[1] 7
[1] 7
[1] 7
[1] 7
[1] 7
[1] 7
[1] 7
[1] 8
[1] 8
[1] 8
[1] 8
[1] 8
[1] 8
[1] 8
[1] 8
[1] 9
[1] 9
[1] 9
[1] 9
[1] 9
[1] 9
[1] 9
[1] 9
[1] 9
[1] 10
[1] 10
[1] 10
[1] 10
[1] 10
[1] 10
[1] 10
[1] 10
[1] 10
[1] 10

提前致谢!

1 个答案:

答案 0 :(得分:0)

如果将结果存储在矢量中而不是打印它是剩下的问题,可以这样做:

result <- vector(mode = "integer")
k <- 1
for (i in 1:10){
  for (j in 1:10)
    if (j<=i)
    {
      result[k] = c(i)
      k <- k+1
    }
}
head(result)