How to repeat different vectors to form another vector?

1 回表示 (過去 30 日間)
xiaojuezi
xiaojuezi 2020 年 8 月 7 日
コメント済み: xiaojuezi 2020 年 8 月 7 日
Hi I would like to construct a vector as:
1,2,3,1,2,3,1,2,3,4,5,6,4,5,6,4,5,6.....k-2,k-1,k,k-2,k-1,k
i.e. repeat [1,2,3], [4,5,6].... 3 times. How to do this without a for loop?
Thank you very much.

採用された回答

Fangjun Jiang
Fangjun Jiang 2020 年 8 月 7 日
repmat()
  2 件のコメント
Fangjun Jiang
Fangjun Jiang 2020 年 8 月 7 日
%%
k=5;
a=1:k*3;
b=reshape(a,3,[]);
c=repmat(b,3,1);
d=c(:)'
xiaojuezi
xiaojuezi 2020 年 8 月 7 日
Thank you very much!

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

その他の回答 (1 件)

Sudheer Bhimireddy
Sudheer Bhimireddy 2020 年 8 月 7 日
For OPs example, it would be:
>> A = [repmat([1,2,3],1,3) repmat([4,5,6],1,3)] %... repmat([k-2,k,k],1,3)];
>> A =
1 2 3 1 2 3 1 2 3 4 5 6 4 5 6 4 5 6

カテゴリ

Help Center および File ExchangeMatrix Indexing についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by