Unable to perform assignment because the size of the left side is 1-by-144 and the size of the right side is 1-by-114.

2 views (last 30 days)
Hi,
I'm getting the error message described above and I'm not sure why, this is the code:
t1_r=zeros(length(idx1i),144);
for i=1:1:length(idx1i)
t1_r(i,:)= t1(idx1i(i): idx1f(i));
end
it seems correct to me since left and right have the same size... Basically the right side is a vector of 1x144 that I'm trying to stock up in a series of rows creating matrix tr_1.
Hopefully you'll be able to help!
Thanks!

Accepted Answer

Alex Mcaulley
Alex Mcaulley on 21 Feb 2019
Probably the problem is that (idx1i(i): idx1f(i)) it's not of 144 size. You probably need to put the range in t1_r variable, for example:
t1_r=zeros(length(idx1i),144);
for i=1:1:length(idx1i)
t1_r(i,idx1i(i): idx1f(i))= t1(idx1i(i): idx1f(i));
end

More Answers (0)

Categories

Find more on Creating and Concatenating Matrices in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!