MATLAB Answers

How to get sum of a range

109 ビュー (過去 30 日間)
Crystal Lee
Crystal Lee 2018 年 8 月 12 日
コメント済み: Paolo 2018 年 8 月 12 日
I am trying to get the code below to output the number of elements within v(a vector) that are below 2 and above 4.
sum(sum(v<2 & v>4))
When I define v and run this, it does not work as I would like it to. eg for
v=[1,3,5];
sum(sum(v<2 & v>4))
I am expecting an output of 2, since there is 1 element below 2(1), and 1 element above 4(5).

  0 件のコメント

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

採用された回答

Paolo
Paolo 2018 年 8 月 12 日
You want to use the OR operator here and not the AND. Use:
nnz(v<2 | v>4)

  2 件のコメント

Image Analyst
Image Analyst 2018 年 8 月 12 日
To build on that, it's because no one number can be both below 2 AND above 4 at the same time. It can be below, or be above, but not both.
Paolo
Paolo 2018 年 8 月 12 日
That really goes without saying, I am sure OP understands that. He is probably confused about the meaning of logical operators.

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

その他の回答 (0 件)

タグ

製品

Community Treasure Hunt

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

Start Hunting!

Translated by