unique values in array
3 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Hi all,
I'm sure this is probably very easy but I can't seem to crack it. I've got an array like so:
timing =
10
5
5
5
5
5
5
5
5
5
5
10
10
10
10
10
10
20
20
20
60
60
60
60
60
30
30
10];
I'd like to produce a table of the data which shows the number of entries, i.e.
1 x 10
10 x 5
6 x 10
3 x 20
5 x 60
3 x 30
1 x 10
This array changes length (and values) each time I run my code.
Using the "unique" command would have this done in a line of code, but the fact that same value repeats itself later in the array is making it a lot more hassle!
Any help greatly appreciated
Thanks Jim
0 comentarios
Respuesta aceptada
Grzegorz Knor
el 9 de Mayo de 2013
Simply idea is to use loop:
f = [1 , timing(1)];
for k=2:numel(timing)
if timing(k)~=timing(k-1)
f(end+1,2)=timing(k);
end
f(end,1) = f(end,1)+1;
end
2 comentarios
Grzegorz Knor
el 9 de Mayo de 2013
And another a little tricky solution:
[diff([0;find(diff([timing;rand()]))]) timing(find(diff([timing;rand()])))]
Más respuestas (0)
Ver también
Categorías
Más información sobre Logical en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!