我从R语言开始,我必须使用rep()
和seq()
创建此向量。
1 2 3 4 5 2 3 4 5 6 3 4 5 6 7 4 5 6 7 8 5 6 7 8 9
我一直在尝试一些东西但是我没有实现它。
答案 0 :(得分:3)
我们可以尝试
1:5 + rep(0:4,each=5)
#[1] 1 2 3 4 5 2 3 4 5 6 3 4 5 6 7 4 5 6 7 8 5 6 7 8 9
答案 1 :(得分:3)
或者喜欢这个?
c(sapply(1:5, function(x) seq(x,x+4)))
[1] 1 2 3 4 5 2 3 4 5 6 3 4 5 6 7 4 5 6 7 8 5 6 7 8 9
答案 2 :(得分:2)
只是为了体育,使用data.table
函数添加shift
版本
unlist(data.table(1:10)[, shift(V1, 5:1)][6:10], use.names = FALSE)
# [1] 1 2 3 4 5 2 3 4 5 6 3 4 5 6 7 4 5 6 7 8 5 6 7 8 9