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

indexindexing

Hi, I would like to know how to change the 0's in C that are in the same position where d1 finds values where (d<=d0) with the corresponding d value. d is a 100×1 array and d0 is the mean value. For instance if the first and fourth elements in d are less than d0, then the first and fourth elements in d are stored as the first and fourth elements in C respectively.
C=zeros(100,1);
d1=find(d<=d0);
C(d1)=d;

Best Answer

  • Almost right. Try this instead:
    C=zeros(100,1);
    d1 = find(d<=d0);
    C(d1)=d(d1);