基于块长度向量的分割向量

用户1234440

我有一个二进制数向量。我知道每组对象的连续长度;如何根据该信息拆分(无for循环)?

x = c("1","0","1","0","0","0","0","0","1")
.length = c(group1 = 2,group2=4, group3=3)

x是我需要拆分的二进制数向量。.length是我得到的信息。.length本质上告诉我第一组有2个元素,它们是前两个元素1,0第二组具有4元素,并包含在组1的数字之后的4个数字1,0,0,0,等等。

有没有办法将其拆分并将拆分后的项目返回到列表中?

丑陋的方法是通过for循环跟踪当前的累积量,但是我正在寻找一种更优雅的方法(如果有)。

丰富的雕刻

您可以使用rep设置拆分变量,使用split

x = c("1","0","1","0","0","0","0","0","1")
.length = c(group1 = 2,group2=4, group3=3)

split(x, rep.int(seq_along(.length), .length))
# $`1`
# [1] "1" "0"
#
# $`2`
# [1] "1" "0" "0" "0"
#
# $`3`
# [1] "0" "0" "1"

如果要将组名带到拆分列表,则可以更改rep以复制名称

split(x, rep.int(names(.length), .length))
# $group1
# [1] "1" "0"
#
# $group2
# [1] "1" "0" "0" "0"
#
# $group3
# [1] "0" "0" "1"

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何基于长度向量创建序列向量

来自分类Dev

计算分割向量的平均长度

来自分类Dev

如何根据列表的长度分割字符向量

来自分类Dev

如何根据列表的长度分割字符向量

来自分类Dev

当子向量长度为偶数或奇数时,将向量分割为相等的子向量长度

来自分类Dev

基于向量数据格式的分割错误

来自分类Dev

如何使用R将向量分割为不同长度的子向量

来自分类Dev

基于矩阵的排序对向量进行排序时的分割错误

来自分类Dev

基于Z值的分割向量3D数组〜Python

来自分类Dev

knapsack()向量长度问题

来自分类Dev

用于创建向量长度向量的写算法

来自分类Dev

从名称向量创建向量并分配长度

来自分类Dev

基于向量的R下标

来自分类Dev

基于向量元素的选择

来自分类Dev

向量分割错误

来自分类Dev

C ++向量分割错误

来自分类Dev

在MATLAB中分割向量

来自分类Dev

按位置分割向量

来自分类Dev

向量分割错误

来自分类Dev

向量分割错误

来自分类Dev

向量上的分割错误

来自分类Dev

按位置分割向量

来自分类Dev

C ++中的分割向量

来自分类Dev

分割后的空向量

来自分类Dev

从基于simd的大向量中加载向量

来自分类Dev

向量基于向量的列替换-MATLAB

来自分类Dev

如何将向量分割成相等的长度,并用R将其与父向量的第一个元素相加

来自分类Dev

如何从字符向量中的不同文本中删除具有不同长度的文本块?

来自分类Dev

整数向量的间隔长度总和