Find which matrix row contains average minimum value

1 次查看(过去 30 天)
I have DNI data stored in a 288 x 365 matrix.
I need to find which row contains the average minimum value (all collumns).
Thanks
  2 个评论
the cyclist
the cyclist 2021-9-21
I, for one, don't quite understand what you need. Can you post a small example (e.g. 3x3 matrix), and step through the logic of what you need?
Lumbersnack
Lumbersnack 2021-9-21
Hello, sure. sorry for the confusion.
example:
A = 3 x 4 matrix
I need the mean of all the collumns for each row e.g:
mean(1,:)....mean (2,:)... mean(3,:)
I need a way to find which row index which has the minimum mean.
hope this clears it up.
Thanks

请先登录,再进行评论。

采纳的回答

Star Strider
Star Strider 2021-9-21
One approach —
M = rand(288,365);
AMV = mean(min(M)) % Average Minimum Value
AMV = 0.0035
[val,idx] = min(abs(M(:)-AMV)) % Closest Element Value & Linear Index
val = 8.1619e-07
idx = 67083
[row,col] = ind2sub(size(M),idx)
row = 267
col = 233
An exact match (exact equality) is highly unlikely.
Experiment to get the result you want.
.
  2 个评论
Lumbersnack
Lumbersnack 2021-9-21
Thanks for the response. Looking at documentation - I thought mean(A) would return mean of the rows.. is there a way to return mean of Columns for each row?
Star Strider
Star Strider 2021-9-21
My pleasure!
MATLAB uses column-major operations, so mean will take the mean of each column by default. That is how I interpreted:
I need to find which row contains the average minimum value (all collumns).
To take the mean of the rows instead:
AMV = mean(min(M),2) % Average Minimum Value
The rest of the code is unchanged, since it will return both the row and column of the closest match.
.

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Delaunay Triangulation 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by