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

1 次查看(过去 30 天)
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 CenterFile Exchange 中查找有关 Multidimensional Arrays 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by