假设我有一个这样的矢量:
a<-c(1,2,3,4)
如何从中获取所有连续组合:
1,2,3,4
2,3,4,1
3,4,1,2
4,1,2,3
但没有别的? 不幸的是,我的矢量要大得多,所以手工操作会耗费太多时间。 谢谢你的帮助。
答案 0 :(得分:5)
我们可以使用matrix
matrix(a, ncol=4, nrow=5)[1:4,]
# [,1] [,2] [,3] [,4]
#[1,] 1 2 3 4
#[2,] 2 3 4 1
#[3,] 3 4 1 2
#[4,] 4 1 2 3
我们可以将上述内容概括为
n <- length(a)
matrix(a, ncol=n, nrow=n+1)[seq(n),]