How to repeat an array based on another array

3 ビュー (過去 30 日間)
Mohammed  Alshehri
Mohammed Alshehri 2017 年 1 月 15 日
回答済み: Stephen23 2017 年 1 月 15 日
Greetings
I am trying to repeat an array based on another array e.g
Repeat element of array A based on the elements of array B
A= [ 1 2 3 4 ]
B= [ 2 3 1 2]
the resulted array should be ( first element of A that is 1 repeated 2 times which is the first element of array B and so on )
C= [ 1 1 2 2 2 3 4 4 ]

採用された回答

the cyclist
the cyclist 2017 年 1 月 15 日
Use repelem.
C = repelem(A,B)
  1 件のコメント
Mohammed  Alshehri
Mohammed Alshehri 2017 年 1 月 15 日
Thank you. It worked.

サインインしてコメントする。

その他の回答 (1 件)

Stephen23
Stephen23 2017 年 1 月 15 日
For MATLAB before R2015a:
>> A = [1,2,3,4];
>> B = [2,3,1,2];
>> cell2mat(arrayfun(@(a,b)repmat(a,1,b),A,B,'uni',0))
ans =
1 1 2 2 2 3 4 4

カテゴリ

Help Center および File ExchangeMatrices and Arrays についてさらに検索

タグ

Community Treasure Hunt

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

Start Hunting!

Translated by