フィルターのクリア

Need help to specify unique values of a vector

4 ビュー (過去 30 日間)
Kostas
Kostas 2011 年 11 月 13 日
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

採用された回答

Fangjun Jiang
Fangjun Jiang 2011 年 11 月 13 日
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 件のコメント
Kostas
Kostas 2011 年 11 月 14 日
You are right, i should use something like [b,idx]=unique(Z) to get indices in idx not find. Thanks a lot

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeCreating and Concatenating Matrices についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by