Azzera filtri
Azzera filtri

How to count the time interval at which a particular number occurs in matrix

1 visualizzazione (ultimi 30 giorni)
suppose I have a matrix let it be 1x20 where I have a strange number 999, which occurs in the following sequence a=[1,2,999,999,3,45,5,999,999,999,999,6,5,8,999,5,67,8,999,7] so i want number of time 999 occurs must be equal to 4 but i am getting the result as a number of time 999 occurs = 8 please help me in this matter.

Risposte (2)

Andrei Bobrov
Andrei Bobrov il 26 Giu 2017
Modificato: Andrei Bobrov il 26 Giu 2017
out = a(diff([0;a(:)])~=0);
or
x = 999;
t = a ~= x;
out = a(t | [1,t(1:end-1)]);

Jan
Jan il 26 Giu 2017
Perhaps: With FEX: RunLength:
a = [1,2,999,999,3,45,5,999,999,999,999,6,5,8,999,5,67,8,999,7];
[B, N] = RunLength(a);
Result = max(N(B = 999));
Now the length of the longest sequence of 999s is replied.

Community Treasure Hunt

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

Start Hunting!

Translated by