File Exchange

## howmany Counts occurrencies of numbers in array

version 1.0.0.0 (1.21 KB) by
Counts the number of occurrences of finite values

Updated 04 Nov 2009

% [val, num] = howmany(x)
%
% counts the number of occurrences of finite values in x
%
% in: x vector of nnumbers (array will be reshaped to a vector)
%
% out: val unique values in x, sorted
% num number of occurrences

### Cite As

Pekka Kumpulainen (2020). howmany Counts occurrencies of numbers in array (https://www.mathworks.com/matlabcentral/fileexchange/25734-howmany-counts-occurrencies-of-numbers-in-array), MATLAB Central File Exchange. Retrieved .

Pekka Kumpulainen

The exact equal match is intentional in this function. I have another function: "isclose" for the "close enough" comparisons.
But a good suggestion anyway, I might add that option.

Nathan Greco

It would be nice if this checked for floating point differences as well.
Ex:
a = [0 0.1 0.2 0.3 0.4];
b = [0:0.1:0.4];
>> [v n] =howmany([a b])
%%%%%%%%%%%%%
v =
0
0.1
0.2
0.3
0.3
0.4
n =
2
2
2
1
1
2

Because the arrays a and b are essentially equal (within eps):
%%%%%%%%%%
>> abs(a-b)<eps
ans =
1 1 1 1 1
>> isequal(a,b)
ans =
0
%%%%%%%%%%
you should at least give an option to count them as the same number.

Just my two cents

-Nathan

##### MATLAB Release Compatibility
Created with R14SP1
Compatible with any release
##### Platform Compatibility
Windows macOS Linux