adding multiple arrays into one big array

Hi,
I have multiple array with different sizes such as A1=(200 by 3000),A2=(280 by 3020).
I will like to create a zeros matrix: A=zeros(480 by 3020) where i'm able to stack each rows of A1 and A2 inside the new array A.
Such that A=[A1;A2]
what should i do?

 Respuesta aceptada

Andrei Bobrov
Andrei Bobrov el 8 de Ag. de 2019
Editada: Andrei Bobrov el 8 de Ag. de 2019
s1 = size(A1);
s2 = size(A2);
s22 = max(s1(2),s2(2));
A = [A1,zeros(s1(1),s22 - s1(2));A2,zeros(s2(1),s22 - s2(2))];

3 comentarios

Kafayat Olayinka
Kafayat Olayinka el 8 de Ag. de 2019
thank you. this works. and if i need to stack more array into A. such that A[A1;A2;A3;A4;...] will it work?
Let C = {A1,A2,A3,..,An}';
[m,n] = cellfun(@size,C,'un',0);
nn = max([n{:}]);
A = cell2mat(cellfun(@(x,y,z)[x,zeros(y,nn-z)],C,m,n,'un',0));
Kafayat Olayinka
Kafayat Olayinka el 8 de Ag. de 2019
It worked! thank you very much!!

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by