MATLAB: Need help to specify unique values of a vector

dinstict valuesunique

I am using the unique command to specify the unique values of a vector that i read from different files. While it works ok for some of them, there are a lot that after i keep just the "unique" values i discover that there are still same values. The code i use is the following
idx=find(unique(Z));
Z=Z(idx);
My problem is that i use the Z variable for interpolation later in my code, so if the values aren't dinstict i get error
Error using ==> interp1 at 261 The values of X should be distinct.
Thank you in advance

Best Answer

  • You probably didn't use the function right.
    find() finds indices of nonzero elements. I don't know why you would run idx=find(unique(Z)).
    unique() will return the unique values in Z, but it could also return the index. See the full help of unique().