In an assignment A(I) = B, the number of elements in B and I must be the same.

1 view (last 30 days)
Hi Guys, first of all I am beginner in Matlab. I want to get Average Values of NDVI for each month during a year. I used this
i=1:12;
jan(i)=ndvi_avhrr_monthly_avg{i};
and then I got this Error (((In an assignment A(I) = B, the number of elements in B and I must be the same.))).
Thanks
Reyadh
  2 Comments
pfb
pfb on 13 Apr 2015
Edited: pfb on 13 Apr 2015
exactly the same question was asked a few minutes before :)
And possibly a million times before.

Sign in to comment.

Accepted Answer

Jan
Jan on 13 Apr 2015
jan(i) is a scalar and obviously the contents of ndvi_avhrr_monthly_avg{i} is not a scalar. Therefore the right hand side cannot be assigned to the left hand side.
  3 Comments
Image Analyst
Image Analyst on 13 Apr 2015
ndvi_avhrr_monthly_avg{i} needs to be a single number to assign it to an element of an array like that. What does this say
cellContents = ndvi_avhrr_monthly_avg{i}
whos cellContents
It will be more than one element. For exmaple cellContents might be a 42 by 300 matrix. So which element do you want to take from cellContents and stuff into jan(i)? Or you can make a structure and just attach the whole array:
simon.theArray = cellContents; % Transfer ALL of the elements.

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!