从矢量中提取连续的元素对并放置在矩阵中

Bar*_*aby 2 r

这可能是一个简单的问题,但我无法找到如何从向量顺序生成值对,其中每对包括最后一个值和具有两列的值矩阵中的新值.以下示例

C<-c(1 , 20 , 44 , 62 , 64 , 89 , 91, 100)
Run Code Online (Sandbox Code Playgroud)

矩阵的例子

newpairs
     [,1] [,2]
[1,]    1   20
[2,]   20   44
[3,]   44   64
[4,]   64   89
[5,]   89   91
[6,]   91  100
Run Code Online (Sandbox Code Playgroud)

因此,当我尝试矩阵时,它不起作用,因为最后一个元素没有用新元素重复

newpairs <- matrix(C, ncol=2, byrow=TRUE) 

newpairs

     [,1] [,2]
[1,]    1   20
[2,]   44   62
[3,]   64   89
[4,]   91  100
Run Code Online (Sandbox Code Playgroud)

我想你可以进行子集,但如果C值发生变化,那么你必须改变掉落或保留子集.我也尝试过提取某些增量或可以提取每个第n个元素的函数.但是,我想找到一种系统的方法来创建第一个示例矩阵.

欢迎任何帮助

EDi*_*EDi 7

这适合您想要的输出:

cbind(C[-length(C)], C[-1])
     [,1] [,2]
[1,]    1   20
[2,]   20   44
[3,]   44   62
[4,]   62   64
[5,]   64   89
[6,]   89   91
[7,]   91  100
Run Code Online (Sandbox Code Playgroud)