Find the some of a row with numbers greater than -1 in matlab

5 Ansichten (letzte 30 Tage)
Numbers in row 1 are: 103, 61, 0, 0, 62, -999, -999, 0, 0, 2
I'm using sum(B,2)
but how can I sum all rows greater than or equal to 0
  2 Kommentare
DGM
DGM am 23 Nov. 2022
Explain what it means to "sum all rows greater than or equal to 0"
and what that has to do with numbers greater than -1
and what that has to do with the values in row 1.
Aurelius Hardy
Aurelius Hardy am 23 Nov. 2022
Maybe I'm looking at this wrong. Row 1 includes inches of of snow received each day. Some days didn't have snow recorded so the -999 was placed there. Therefore, that sum shouldn't be included in the sum of row 1. So I want to get the sum of days that had snow >/= 0.

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Walter Roberson
Walter Roberson am 23 Nov. 2022
B = [103, 61, 0, 0, 62, -999, -999, 0, 0, 2]
B = 1×10
103 61 0 0 62 -999 -999 0 0 2
sum( max(B, 0), 2)
ans = 228
  3 Kommentare
Walter Roberson
Walter Roberson am 23 Nov. 2022
Note that sum(B(B>0)) would only work for a single row, whereas the max solution works for multiple rows
Image Analyst
Image Analyst am 23 Nov. 2022
@Aurelius Hardy please click the "Accept this answer link" to award @Walter Roberson reputation points and let others know it's already been solved. Thanks in advance 🙂.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Loops and Conditional Statements finden Sie in Help Center und File Exchange

Produkte

Community Treasure Hunt

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

Start Hunting!

Translated by