1

如何创建向量序列:

2 3 4 5 6 7 8 3 4 5 6 7 8 4 5 6 7 8 5 6 7 8 6 7 8 7 8

我尝试使用:

2:8+rep(0:6,each=6)

但结果是:

2 3 4 5 6 7 8 3 4 5 6 7 8 9 4 5 6 7 8 9 10 .... 12 13 14

请帮忙。谢谢。

4

2 回答 2

0

这应该完成您正在寻找的内容:

x = 2
VecSeq = c(x:8)

while (x < 7) {
    x = x + 1
    calc = c(x:8)
    VecSeq = c(VecSeq, calc)
}

VecSeq # Your desired vector
于 2017-09-12T16:01:20.090 回答
0

你可以这样做:

library(purrr)
unlist(map(2:7, ~.x:8))

# [1] 2 3 4 5 6 7 8 3 4 5 6 7 8 4 5 6 7 8 5 6 7 8 6 7 8 7 8

以及基础 R 中的一个小功能:

funky_vec <- function(from,to){unlist(sapply(from:(to-1),`:`,to))}
funky_vec(2,8)
# [1] 2 3 4 5 6 7 8 3 4 5 6 7 8 4 5 6 7 8 5 6 7 8 6 7 8 7 8
于 2017-09-12T11:39:01.057 回答