Combining two matrices with different sizes

I have two matrices: M1(176x2x7) double and M2(369x2x27). The 176 column is 250:600 (interval of 2) and the 369 column is 230:598 (interval of 1). I would like the M1 to replace M2 (: , : ,1:7) and make sure the data is 0 for the odd numbers after the replacement for (: , : ,1:7). Could anyone please tell me how to do it.
Thank you very much!

6 Commenti

Replacement requires 5166 elements, M1 only has 2464 elements. How do you want to come up with the other elements?
What does this mean: "The 176 column is 250:600 (interval of 2)"?
Sorry for the confusion. I mean in the first column of M1, the number is from 250, 252, 254, ..., 598, 600. From 250 to 600, the interval between each number is 2.
Thanks David, I would like the numbers of M1 1st column and 1st M2 column to match if there is data. If there is no data, fill the rest with zeros.
A simple example would be helpful. What about the other columns? Are all the 1st columns of M1 in the 3rd dimension the same? (250:2:600)'
The two matrices M1(176x2x7) (:,1,:) is from 250:600 with an increment of 2. M2 (:,1,:) is from 230:598 with an increment of 1. I would like the (:,1,:) of the two matrices to match (so both of them are 230:598 with an increment of 1 now), and replace M2 (:,:,1:7) with M1 to form a new M3 (369x2x27). For the mising data in M1, I would just like to fill these with 0. Sorry for the confusion - I hope this is clearer now.

Accedi per commentare.

 Risposta accettata

Matt J
Matt J il 19 Mag 2022
Modificato: Matt J il 19 Mag 2022
M3=zeros(600,2,7);
M3(230:598,:,:)=M2;
M3(250:2:600,:,:)=M1; %replace M2 with M1
M3(1:2:end,:,:)=0;%odd numbers are zero

Più risposte (0)

Categorie

Scopri di più su Argument Definitions in Centro assistenza e File Exchange

Prodotti

Release

R2022a

Tag

Community Treasure Hunt

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

Start Hunting!

Translated by