how to fit an array in matrix?

6 vues (au cours des 30 derniers jours)
Abdulaziz Abutunis
Abdulaziz Abutunis le 8 Oct 2015
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

Réponse acceptée

Image Analyst
Image Analyst le 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.

Plus de réponses (1)

James Tursa
James Tursa le 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 commentaire
Abdulaziz Abutunis
Abdulaziz Abutunis le 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

Connectez-vous pour commenter.

Catégories

En savoir plus sur Creating and Concatenating Matrices dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by