Counting number of elements less than value across 2d matrix

3 次查看(过去 30 天)
I have a two-dimensional matrix of numbers size A(720,1440). I'd like to calculate the percent of values in part of the matrix -- i.e., from 401:440 and 1081:1360 -- where values are less than or equal to 5, exclusing NaN values.
In order to accomplish this, I'd like to first count the number of elements for this part of A (401:440,1081:1360) where values are less than 5, but omiting any NaN values.
I'm trying to do this using the sum function like below but I'm striking out. Any suggestions?
sum(A(401:440,1081:1360)<=5)

采纳的回答

Adam Danz
Adam Danz 2024-5-20
编辑:Adam Danz 2024-5-20
> I'd like to calculate the percent of values in part of the matrix -- i.e., from 401:440 and 1081:1360 -- where values are less than or equal to 5, exclusing NaN values.
A = randi(10,720,1440);
mu = mean(A(401:440,1081:1360)<=5,'all','omitnan')
mu = 0.4957
> I'd like to first count the number of elements for this part of A (401:440,1081:1360) where values are less than 5, but omiting any NaN values.
As you can see above, this step isn't needed. But for completeness,
count = sum(A(401:440,1081:1360)<=5,'all','omitnan')
count = 5552
To verity the mean computed above,
totalNumberOfElements = numel(A(401:440,1081:1360))
totalNumberOfElements = 11200
myConfirmed = count/totalNumberOfElements
myConfirmed = 0.4957

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Matrix Indexing 的更多信息

产品


版本

R2024a

Community Treasure Hunt

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

Start Hunting!

Translated by