Adding dummy zeroes in a matrix
5 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
I have several arrays of different lengths that need to combined into a single matrix of order n * n where n is the length of the longest array and dummy zeroes have to be added in those shorter arrays.For example,A=[1 2 3],B=[1 2 3 4] I want to combine A and B in a single matrix C =[1 2 3 0 1 2 3 4] .Note that a dummy zero has been added after 3 to make C a square.How do I achieve that?
2 comentarios
Matt Tearle
el 21 de Mzo. de 2011
Do you want the result to be an n-by-n matrix, or a 1-by-n*n vector? Your example shows C as a vector, but you say "square". Also, if you mean C = [1 2 3 0;1 2 3 4], that's 2-by-4, not 4-by-4. So, would you actually want C = [1 2 3 0;1 2 3 4;0 0 0 0;0 0 0 0]?
And, finally, how do you have the vectors? Do you have a whole pile of vectors "A", "B", "C", ... "Q" already? Or will they be generated (eg in a loop)? Is there any pattern to the names, or do you have to manually reference them?
Respuesta aceptada
Walter Roberson
el 21 de Mzo. de 2011
n = max([numels(A), numels(B)]);
C = zeros(n,2);
C(1:numels(A),1) = A;
C(1:numels(B),2) = B;
Más respuestas (0)
Ver también
Categorías
Más información sobre Symbolic Math Toolbox en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!