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

1 Ansicht (letzte 30 Tage)
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 Kommentare
Jan
Jan am 13 Apr. 2015
Please format your code properly. I've fixed this for you today.
pfb
pfb am 13 Apr. 2015
Bearbeitet: pfb am 13 Apr. 2015
exactly the same question was asked a few minutes before :)
And possibly a million times before.

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Jan
Jan am 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 Kommentare
Image Analyst
Image Analyst am 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.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Community Treasure Hunt

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

Start Hunting!

Translated by