get same column of matrix automatically.

1 view (last 30 days)
I want to get same column 'automatically'.
example,
A = [ 1 2 3 4 5] 1X5
B = [ 3 4 2 ] 1X3
I want to get 1X10 matrixs of A,B. (regardless of value)
outcome,
A = [ 1 2 3 4 5 0 0 0 0 0 ]
B = [ 3 4 2 0 0 0 0 0 0 0 ]

Accepted Answer

Guillaume
Guillaume on 30 Jan 2015
Edited: Guillaume on 30 Jan 2015
function resized = expandcolumns(m, c)
%m a 1d or 2d matrix with less than c columns
%c the number of columns to expand to. Additional columns are filled with 0.
%input checking
validateattributes(m, {'numeric', 'logical'}, {'2d'}, 1);
validateattributes(c, {'numeric'}, {'scalar', 'positive'}, 2);
if size(m, 2) > c
error('matrix is already wider than requested');
end
%the resizing:
resized = [m zeros(size(m, 1), c-size(m, 2))];
end

More Answers (1)

Mischa Kim
Mischa Kim on 30 Jan 2015
Heo, how about simply
A = [A zeros(1,10-numel(A))]
for example.

Categories

Find more on Resizing and Reshaping Matrices in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!