Filter löschen
Filter löschen

How to find a row that have maximum mean value in 2D array?

2 Ansichten (letzte 30 Tage)
minsoo kim
minsoo kim am 2 Dez. 2017
Kommentiert: KL am 3 Dez. 2017
Let's say I have a 2D array S(m,n).
What I want to do is to find a row that has the biggest mean value. I'll call this row as 'i'th row.
So my matlab code was like this.
[i]=find(S==max(mean(S)));
[i]
But matlab just shows "ans = []" which means, there is something wrong with my code.
The problem is, I have no idea how to fix it.
Any ideas?

Akzeptierte Antwort

KL
KL am 2 Dez. 2017
Bearbeitet: KL am 3 Dez. 2017
You'd need
[maxVal, maxInd] = max(mean(S,2))
mean with parameter 2 calculates mean on the second dimension and then you find the max and it's index.
  3 Kommentare
minsoo kim
minsoo kim am 3 Dez. 2017
uh....I think there are some mistakes in your code.
maxRow = find(max(mean(S,2)))
This only returns 1.
KL
KL am 3 Dez. 2017
You're right, using find wasn't the best choice. You can simply use the second output of max.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Matrix Indexing finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!