Modifying a matrix such that each entry can be written in a block of four

1 回表示 (過去 30 日間)
Ahmad Hasnain
Ahmad Hasnain 2021 年 9 月 6 日
編集済み: Walter Roberson 2021 年 9 月 6 日
Hi,
I have a matrix, say
A = [1 2
3 4];
I want to modify it in such a way that it can be written as
A = [1 1 2 2
1 1 2 2
3 3 4 4
3 3 4 4];
Each entry in the matrix A can be written in a block of four. How can I code it?

採用された回答

Walter Roberson
Walter Roberson 2021 年 9 月 6 日
編集済み: Walter Roberson 2021 年 9 月 6 日
A = [1 2
3 4]
A = 2×2
1 2 3 4
B = kron(A, ones(2,2))
B = 4×4
1 1 2 2 1 1 2 2 3 3 4 4 3 3 4 4
C = repelem(A, 2, 2)
C = 4×4
1 1 2 2 1 1 2 2 3 3 4 4 3 3 4 4

その他の回答 (1 件)

Yamina chbak
Yamina chbak 2021 年 9 月 6 日
a=[1 2 ; 3 4];
A=zeros(2*size(a));
A(1:2,1:2)=a(1);
A(1:2,3:4)=a(3);
A(3:4,1:2)=a(2);
A(3:4,3:4)=a(4);
A
A = 4×4
1 1 2 2 1 1 2 2 3 3 4 4 3 3 4 4

カテゴリ

Help Center および File ExchangeResizing and Reshaping Matrices についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by