How to count the maximum and minimum range of non-zeros elements?
    3 visualizzazioni (ultimi 30 giorni)
  
       Mostra commenti meno recenti
    
    Jahanzeb Saqib
 il 7 Dic 2020
  
    
    
    
    
    Commentato: Jahanzeb Saqib
 il 8 Dic 2020
            let's suppose we have A of length 50 rows
how we can calculate the maximum range of non-zeros element and as well as minimum
A = [0 0 1 1 1 1 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 1 1 1 1 1 0 0 0 0 ]
In this case Max and Min should be,
Max = 5
Min = 2
Is there a straightforward solution to do this? without using complex looping because in my case data is too large approximately length of A is 220079705, your kind consideration will be highly regarded by all means,
Many Thanks
2 Commenti
  hangar011
 il 7 Dic 2020
				There are built-in functions for this...
length(find(A)) or length(find(A==0)) 
Risposta accettata
  Image Analyst
      
      
 il 7 Dic 2020
        Use regionprops(), in the Image Processing Toolbox:
A = [0 0 1 1 1 1 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 1 1 1 1 1 0 0 0 0 ]
props = regionprops(logical(A), 'Area');
allLengths = [props.Area];
minLength = min(allLengths)
maxLength = max(allLengths)
Più risposte (0)
Vedere anche
Categorie
				Scopri di più su Logical in Help Center e File Exchange
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!


