How do I find the percentage of a number of values within a certain range?

27 次查看(过去 30 天)
I have a number of values which represent the differences between two surfaces. I would like to know the percentage of values which lie within a certain range e.g 0.05 and -0.05? How would I go about finding these values and then working out what percentage of the total?

采纳的回答

Stephen23
Stephen23 2017-4-28
编辑:Stephen23 2017-4-28
>> M = rand(6,7)-0.5; % matrix of fake data
>> X = -0.05<M & M<0.05; % check conditions
>> nnz(X)/numel(M)
ans = 0.095238
9.5% of the values of M are within the given conditions.

更多回答(1 个)

Guillaume
Guillaume 2017-4-28
编辑:Guillaume 2017-4-28
sum(x > -0.05 & x < 0.05) / numel(x) %number of values between -0.05 and 0.05 divided by total number
Or if you want to do that with several interval, use histcounts with the 'Normalization', 'probability' option.
histcounts(x, -3.5:3.5, 'Normalization', 'probability'); %for example for 6 bins

类别

Help CenterFile Exchange 中查找有关 Creating and Concatenating Matrices 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by