Combining two arrays by pointwise repeating the elements of A(i), B(i) times.

2 次查看(过去 30 天)
I want to combine two vectors (A and B) with the same length into a new vector (C) with length sum of B.
e.g.
A = [1,2,3,4]; B = [2,1,2,3];
C = [1,1,2,3,3,4,4,4]
Thus repeating the elements of A, B times.

回答(2 个)

Pierre Benoit
Pierre Benoit 2014-10-9

Matt J
Matt J 2014-10-9
编辑:Matt J 2014-10-9
idx(cumsum([1,B]))=ones(length(A)+1,1);
C=A(cumsum(idx(1:end-1)))

类别

Help CenterFile Exchange 中查找有关 Matrices and Arrays 的更多信息

标签

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by