Adding dummy zeroes in a matrix
9 次查看(过去 30 天)
显示 更早的评论
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 个评论
Matt Tearle
2011-3-21
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?
采纳的回答
Walter Roberson
2011-3-21
n = max([numels(A), numels(B)]);
C = zeros(n,2);
C(1:numels(A),1) = A;
C(1:numels(B),2) = B;
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Symbolic Math Toolbox 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!