finding repetition numbers in array.

A=[1;1;1;2;2;2;2;3;3;3]; %double
%I wanna known how many times 1,2,3 are exist in A matrix with orderly like that;
rep=[3;4;3]; %w.r.t A matrix (3 times 1, 4 times 2 and 3 times 3)

5 Commenti

I'm not sure I've understood your question. My current understanding is you have a matrix A, and wanna calculate the array rep. Am I right?
sermet
sermet il 15 Mag 2014
Modificato: sermet il 15 Mag 2014
I wanna determine the repetition times of each number in A matrix for example 1 repeated 3 times, 2 repeated 4 times and so on.
Your question title (finding repetition numbers) and your question text ("how many times exist") are open for ambiguity.
For A = [1 1 4 1 1 1] should the algorithm return [5 1], [5 0 0 1] or [2 1 3]?
He accepted Neuroscientist's answer below. Seems [5,1] is the correct answer.
Sure Yao, but the ambiguity remains ...

Accedi per commentare.

 Risposta accettata

Neuroscientist
Neuroscientist il 15 Mag 2014

7 voti

you can have something like this:
A=[1;1;1;2;2;2;2;3;3;3];
B = unique(A); % which will give you the unique elements of A in array B
Ncount = histc(A, B); % this willgive the number of occurences of each unique element
best NS

1 Commento

simple and clear explaination. thank you sir, now i am able to solve my problem.

Accedi per commentare.

Più risposte (1)

Your question title (finding repetition numbers) and your question text ("how many times exist") are open for ambiguity.
For A = [1 1 4 1 1 1] should the algorithm return [5 1], [5 0 0 1] or [2 1 3]?
A = [1 1 4 1 1 1]
% [5 1] case
R = histc(A,unique(A))
% [5 0 0 1] case
R = histc(A,1:max(A))
% [2 1 3] case
N = diff([0 find(diff(A)) numel(A)])

2 Commenti

hi, thank you for your detailed answer,
I have another question, can I get some case like,
% [1 4 1] case
removing duplicates then
A = [1 1 4 1 1 1];
b = A([true, diff(A)~=0])
b = 1×3
1 4 1

Accedi per commentare.

Categorie

Scopri di più su Operators and Elementary Operations in Centro assistenza e File Exchange

Tag

Community Treasure Hunt

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

Start Hunting!

Translated by