如何从向量的条目中制作重叠向量?

时间:2016-04-05 09:57:33

标签: r

为了简化我的问题,假设我有一个向量x< -c(1:12)并且想要制作一个像下面这样的列表:

x : 1,2,3,4,5,6,7,8,9,10,11,12

    list[[1]]: 1,2,3,4,5,6 
    list[[2]]: 3,4,5,6,7,8 
    list[[3]]: 5,6,7,8,9,10 
    list[[4]]: 7,8,9,10,11,12 
    list[[5]]: 9,10,11,12,1,2 
    list[[6]]: 11,12,1,2,3,4 

如您所见,邻居向量有4个重叠值,最后一个向量用第一个向量包围。

这样做的快速而干净的方法是什么?

1 个答案:

答案 0 :(得分:1)

这样做你想要的吗?

x2 <- c(x,x)
lapply(seq(1, length(x)-1, 2), function(i)x2[i:(i+5)])