R 将一个向量转换为两个特定长度的向量

R 将一个向量转换为两个特定长度的向量,r,R,我有这个向量: x <-c(0.2, 0.9, 1.5, 3.9, 1.1, 1.6, 0.9, 1.9, 0.5, 4.8,0.5, 0.9, .5, 5.9, 1.1, 1.6, 0.9, 2.9, 0.6, 3.8) 使用split()的简单解决方案: 使用split()的简单解决方案: 经过一些研究,我发现有一个简单的方法来完成这项任务 即: x <-c(0.2, 0.9, 1.5, 3.9, 1.1, 1.6, 0.9, 1.9, 0.5, 4.8,0.5, 0.9,

我有这个向量:

 x <-c(0.2, 0.9, 1.5, 3.9, 1.1, 1.6, 0.9, 1.9, 0.5, 4.8,0.5, 0.9, .5, 5.9, 1.1, 1.6, 0.9, 2.9, 0.6, 3.8)

使用
split()
的简单解决方案:


使用
split()
的简单解决方案:


经过一些研究,我发现有一个简单的方法来完成这项任务

即:

 x <-c(0.2, 0.9, 1.5, 3.9, 1.1, 1.6, 0.9, 1.9, 0.5, 4.8,0.5, 0.9, .5, 5.9, 1.1, 1.6, 0.9, 2.9, 0.6, 3.8)

x1 <- x[1:10]
x2 <- x[2:20] 

x经过一些研究,我发现有一种简单的方法来完成这项任务

即:

 x <-c(0.2, 0.9, 1.5, 3.9, 1.1, 1.6, 0.9, 1.9, 0.5, 4.8,0.5, 0.9, .5, 5.9, 1.1, 1.6, 0.9, 2.9, 0.6, 3.8)

x1 <- x[1:10]
x2 <- x[2:20] 

x
split(x,0:(长度(x)-1)%/%10)
@PoGibas请你把它写下来作为答案,我会接受的。另外,请您解释一下我如何访问每个元素。您也可以使用
gl
split(x,as.integer(gl(length(x),10,length(x)))
@akrun非常感谢。)<代码>拆分(x,0:(长度(x)-1)%/%10)
@PoGibas请你把它写下来作为答案,我会接受的。另外,请您解释一下我如何访问每个元素。您也可以使用
gl
split(x,as.integer(gl(length(x),10,length(x)))
@akrun非常感谢。)
[1] 0.2 0.9 1.5 3.9 1.1 1.6 0.9 1.9 0.5 4.8
> x1=x[seq(1,0.5*length(x))]
> x1
 [1] 0.2 0.9 1.5 3.9 1.1 1.6 0.9 1.9 0.5 4.8
> x2=x[seq(0.5*length(x),length(x))]
> x2
 [1] 4.8 0.5 0.9 0.5 5.9 1.1 1.6 0.9 2.9 0.6 3.8
 x <-c(0.2, 0.9, 1.5, 3.9, 1.1, 1.6, 0.9, 1.9, 0.5, 4.8,0.5, 0.9, .5, 5.9, 1.1, 1.6, 0.9, 2.9, 0.6, 3.8)

x1 <- x[1:10]
x2 <- x[2:20]