how to fit an array in matrix?

6 views (last 30 days)
Hi All,
is there any function or command to fit (insert) an array in a 2D matrix by shifting the later arrays one step down so not to overwrite that array

Accepted Answer

Image Analyst
Image Analyst on 8 Oct 2015
If the number of columns are the same, you can insert array2 into array 1 starting at row k like this:
outputArray = [array1(1:k-1,:); array2; array1(k:end,:)];
If the number of rows are the same, you can insert array2 into array 1 starting at column k like this:
outputArray = [array1(:, 1:k-1), array2, array1(:, k:end)];
If the number of rows and columns are different, then you'd basically have to paste the smaller on onto the larger one, overwriting values, or else insert a slab of zeros and then overwrite the zeros.

More Answers (1)

James Tursa
James Tursa on 8 Oct 2015
What are the sizes involved? E.g., are you trying to insert a row at the front? E.g., is this what you want (assumes same number of columns for new_row and my_matrix):
new_row = whatever
my_matrix = whatever
my_matrix = [new_row;my_matrix]; % <-- insert new row at front
  1 Comment
Abdulaziz Abutunis
Abdulaziz Abutunis on 8 Oct 2015
Thank you James for the prompt response.
Is it possible to insert the array at known index and shift what ever after that index one step down.
Thanks

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!