Combining two matrices with different sizes

1 view (last 30 days)
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 Comments
David Hill
David Hill on 19 May 2022
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)'
Cheuk Yin Wong
Cheuk Yin Wong on 22 May 2022
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.

Sign in to comment.

Accepted Answer

Matt J
Matt J on 19 May 2022
Edited: Matt J on 19 May 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

More Answers (0)

Categories

Find more on Argument Definitions in Help Center and File Exchange

Tags

Products


Release

R2022a

Community Treasure Hunt

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

Start Hunting!