- There is "greater than" operator in MATLAB, which will operate on vectors
- There is also an operator that will sum over a vector
- There is a docsearch command that will search the documentation
How to count in arrays?
2 ビュー (過去 30 日間)
古いコメントを表示
Let's say I have two arrays
apple = [1 2 3 4 5 6 7 8];
pear = [2 3 1 2 7 6 1 8];
I want to compare these arrays and count how many items in pear are bigger than the item at the same place in apple. How would I do this?
1 件のコメント
the cyclist
2014 年 11 月 17 日
編集済み: the cyclist
2014 年 11 月 17 日
Sounds like homework. Here are a few hints:
採用された回答
Manoj
2014 年 11 月 17 日
x=sum(pear>apple);
1 件のコメント
John D'Errico
2014 年 11 月 17 日
While this correct, I recall that it will be slightly faster to use nnz instead of sum.
x = nnz(pear > apple);
The difference will be small unless the arrays are significantly large.
pear = round(rand(1,1e7)*10);
apple = round(rand(1,1e7)*10);
timeit(@() sum(pear > apple))
ans =
0.03888
timeit(@() nnz(pear > apple))
ans =
0.023221
その他の回答 (0 件)
参考
カテゴリ
Help Center および File Exchange で Logical についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!