Using find with a vector without having to use a for loop
古いコメントを表示
I have code which does
for t = 1: length(vector2)
idx(t) = find(vector <=vector2(t), 1, 'last');
end
Can I call find.m without using a for loop (or bsxfun.m) and if so how?
Or should I just use histc?
[~,idx]=histc(vector2, vector);
5 件のコメント
the cyclist
2013 年 3 月 14 日
Why do you prefer not to use bsxfun? It seems well suited to the task.
Matlab2010
2013 年 3 月 14 日
Friedrich
2013 年 3 月 14 日
That is not true! BSXFUN is highly parallized under the hood. Fastest function you can get.
Jan
2013 年 3 月 14 日
BSXFUN is not a slower version of a loop. I think ARRAYFUN could earn this description, especially when used with anonymous functions.
Matlab2010
2013 年 3 月 28 日
採用された回答
その他の回答 (0 件)
カテゴリ
ヘルプ センター および File Exchange で Loops and Conditional Statements についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!