how to have a vector that counts how many repetitive numbers there is in another vector?

3 次查看(过去 30 天)
So i have a vector with 100 numbers. And those numbers only goes until 51.
For example A = [ 50 49 32 21 50 38 41 2 46.....]
And what i want is a vector B that has 51 numbers and tells me for example how many 1's there is in vector A, and how many 2's there's in the vector and so on.
Thank you

采纳的回答

madhan ravi
madhan ravi 2018-8-17
Maybe try this example:
A = [1 2 3 3 4 5 1]
u = unique(A)
Expected_result = histc(A,u)

更多回答(2 个)

Image Analyst
Image Analyst 2018-8-17
Do you mean the histogram?
% Make a vector with 1000 numbers in the range 1 - 51.
A = randi(51, 1, 1000)
% count frequency of each number
histObj = histogram(A)
grid on;
title('Histogram of A', 'FontSize', 17);
xlabel('A Value', 'FontSize', 17);
ylabel('Count', 'FontSize', 17);
% Get counts.
counts = histObj.Values
% Get bin edges.
edges = histObj.BinEdges
% Get bin centers.
binCenters = (edges(1:end-1) + edges(2:end)) / 2

Andrei Bobrov
Andrei Bobrov 2018-8-17
out = [(1:51)',histcounts(A,1:52)']

类别

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

Community Treasure Hunt

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

Start Hunting!

Translated by