code without using for

2 ビュー (過去 30 日間)
huda nawaf
huda nawaf 2013 年 3 月 17 日
hi,
I want code do the following without using for,if let unique_x is a vector
t=1;
for v=1:length(z)
a1=find(unique_x==z(v));
if isempty(a1)
evaluation(t)=z(v);
t=t+1;
end
end
thanks in advance
  2 件のコメント
the cyclist
the cyclist 2013 年 3 月 17 日
It would be easier for us to help you if you supplied a small example of self-contained code that runs from start to finish. Specifically, telling us a small example of unique_x and z would help.
huda nawaf
huda nawaf 2013 年 3 月 17 日
many thanks

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

採用された回答

Cedric
Cedric 2013 年 3 月 17 日
I think that you'll want something along the line of the following example:
>> z = [3 5 7] ;
>> unique_x = [1 2 7 8 9 3] ;
>> evaluation = z(~ismember(z, unique_x))
evaluation =
5
  1 件のコメント
huda nawaf
huda nawaf 2013 年 3 月 17 日
many thanks

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

その他の回答 (1 件)

Walter Roberson
Walter Roberson 2013 年 3 月 17 日
setdiff(z, unique_x)
provided that you do not care about the order of the results, and there are no duplicate values in z.
  1 件のコメント
huda nawaf
huda nawaf 2013 年 3 月 17 日
many thanks

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

カテゴリ

Help Center および File ExchangeLoops and Conditional Statements についてさらに検索

タグ

Community Treasure Hunt

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

Start Hunting!

Translated by