How can I find a maximum mean value of row with given 2D array?
1 次查看(过去 30 天)
显示 更早的评论
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.
Someone said that
maxRow=find(max(mean(S,2)));
i = maxRow
this code could solve the problem but unfortunately, the code above only returns 1.
Any ideas?
0 个评论
采纳的回答
Star Strider
2017-12-3
Try this:
max_mean_row_idx = find(mean(S,2) == max(mean(S,2)))
max_mean_row = mean(S(max_mean_row_idx,:),2)
if there could be several rows with the same maximum row mean,
or:
[max_mean_row,max_mean_row_idx] = max(mean(S,2))
if you only want the first maximum row mean.
0 个评论
更多回答(0 个)
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!