相关疑难解决方法(0)

重复数组元素的副本:在MATLAB中运行长度解码

我正在尝试使用'values'数组和'counter'数组将多个值插入到数组中.例如,如果:

a=[1,3,2,5]
b=[2,2,1,3]
Run Code Online (Sandbox Code Playgroud)

我想要一些功能的输出

c=somefunction(a,b)
Run Code Online (Sandbox Code Playgroud)

成为

c=[1,1,3,3,2,5,5,5]
Run Code Online (Sandbox Code Playgroud)

其中a(1)重复b(1)次,a(2)重复b(2)次等等...

MATLAB中是否有内置函数来执行此操作?如果可能的话,我想避免使用for循环.我尝试过'repmat()'和'kron()'的变体无济于事.

这基本上是Run-length encoding.

arrays matlab vectorization repeat run-length-encoding

16
推荐指数
4
解决办法
4099
查看次数