Need help to specify unique values of a vector

1 visualización (últimos 30 días)
Kostas
Kostas el 13 de Nov. de 2011
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

Respuesta aceptada

Fangjun Jiang
Fangjun Jiang el 13 de Nov. de 2011
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().
  1 comentario
Kostas
Kostas el 14 de Nov. de 2011
You are right, i should use something like [b,idx]=unique(Z) to get indices in idx not find. Thanks a lot

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Workspace Variables and MAT-Files en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by