histc - (Not recommended) Histogram bin counts - MATLAB (original) (raw)
(Not recommended) Histogram bin counts
Syntax
Description
[bincounts](#btx9b%5Fu-1-bincounts) = histc([x](#btx9b%5Fu-1-x),[binranges](#btx9b%5Fu-1-binranges))
counts the number of values in x
that are within each specified bin range. The input, binranges
, determines the endpoints for each bin. The output,bincounts
, contains the number of elements from x
in each bin.
- If
x
is a vector, thenhistc
returnsbincounts
as a vector of histogram bin counts. - If
x
is a matrix, thenhistc
operates along each column ofx
and returnsbincounts
as a matrix of histogram bin counts for each column.
To plot the histogram, use bar(binranges,bincounts,'histc')
.
[bincounts](#btx9b%5Fu-1-bincounts) = histc([x](#btx9b%5Fu-1-x),[binranges](#btx9b%5Fu-1-binranges),[dim](#btx9b%5Fu-1-dim))
operates along the dimension dim
.
[[bincounts](#btx9b%5Fu-1-bincounts),[ind](#btx9b%5Fu-1-ind)] = histc(___)
returns ind
, an array the same size asx
indicating the bin number that each entry in x
sorts into. Use this syntax with any of the previous input argument combinations.
Examples
Initialize the random number generator to make the output of randn
repeatable.
Define x
as 100 normally distributed random numbers. Define bin ranges between -4 and 4. Determine the number of values in x
that are within each specified bin range. Return the number of elements in each bin in bincounts
.
x = randn(100,1); binranges = -4:4; [bincounts] = histc(x,binranges)
bincounts = 9×1
0
2
17
28
32
16
3
2
0
To plot the histogram, use the bar
function.
figure bar(binranges,bincounts,'histc')
Defined ages
as a vector of ages. Sort ages
into bins with varying ranges between 0 and 75.
ages = [3,12,24,15,5,74,23,54,31,23,64,75]; binranges = [0,10,25,50,75];
[bincounts,ind] = histc(ages,binranges)
bincounts = 1×5
2 5 1 3 1
ind = 1×12
1 2 2 2 1 4 2 4 3 2 4 5
bincounts
contains the number of values in each bin. ind
indicates the bin numbers.
Input Arguments
Values to be sorted, specified as a vector or a matrix. The bin counts do not include values in x
that are NaN
or that lie outside the specified bin ranges. If x
contains complex values, thenhistc
ignores the imaginary parts and uses only the real parts.
Data Types: single
| double
| int8
| int16
| int32
| uint8
| uint16
| uint32
Bin ranges, specified as a vector of monotonically nondecreasing values or a matrix of monotonically nondecreasing values running down each successive column. The values inbinranges
determine the left and right endpoints for each bin. Ifbinranges
contains complex values, then histc
ignores the imaginary parts and uses only the real parts.
If binranges
is a matrix, then histc
determines the bin ranges by using values running down successive columns. Each bin includes the left endpoint, but does not include the right endpoint. The last bin consists of the scalar value equal to last value in binranges
.
For example, if binranges
equals the vector[0,5,10,13]
, then histc
creates four bins. The first bin includes values greater than or equal to 0 and strictly less than 5. The second bin includes values greater than or equal to 5 and less than 10, and so on. The last bin contains the scalar value 13.
Data Types: single
| double
| int8
| int16
| int32
| uint8
| uint16
| uint32
Dimension along which to operate, specified as a scalar.
Output Arguments
Number of elements in each bin, returned as a vector or a matrix. The last entry inbincounts
is the number of values in x
that equal the last entry in binranges
.
Bin index numbers, returned as a vector or a matrix that is the same size asx
.
Tips
- If values in
x
lie outside the specified bin ranges, thenhistc
does not include these values in the bin counts. Start and end thebinranges
vector with-inf
andinf
to ensure that all values inx
are included in the bin counts.
Extended Capabilities
Usage notes and limitations:
- For input argument
x
:- If you do not specify a dimension, the code generator operates along the first dimension of the input array that is variable size or whose size does not equal 1. If this dimension is variable size at code generation time and is 1 at run time, a run-time error can occur. To avoid this error, specify the dimension.
- The output of a variable-size array that is a column vector at run time is a column vector, not a row vector.
- If used, the
dim
argument must be a constant at code generation time.
Version History
Introduced before R2006a