Detect consecutive positive numbers in an array
3 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Amirhossein Moosavi
le 24 Sep 2020
Commenté : Amirhossein Moosavi
le 24 Sep 2020
Hello,
Let us assum an Array A as follows:
A = [4 9 6 0 0 3 4 0 3]
I want to detect the location (begining and ending) of consecutive positive values and store in a Matrix like B:
B=[1 3
6 7
9 9]
For example, in Array A, the first block of consequtive positive values starts from the first element and ends at the third elements.
Would you please help me?
Best, Amir
0 commentaires
Réponse acceptée
David Hill
le 24 Sep 2020
Modifié(e) : David Hill
le 24 Sep 2020
A(A<0)=0;%if negative numbers possible
A(A>9)=9;%if >single digit possible
a=num2str(A);
a=a(a~=' ');
B=[regexp(a,'[1-9]*')',regexp(a,'[1-9]*','end')'];
3 commentaires
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Multidimensional Arrays dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!