hi, my array=[ 1 2 4 5 16 18 21 28 36 38..............], i need to find max value within every 10 numbers,(i.e, my answers=[5 18 28 38...............]).
    2 visualizaciones (últimos 30 días)
  
       Mostrar comentarios más antiguos
    
    kaavya subramani
 el 3 de Nov. de 2016
  
    
    
    
    
    Comentada: kaavya subramani
 el 4 de Nov. de 2016
            i dont know to explain clearly in english, sorry.
Respuesta aceptada
  Walter Roberson
      
      
 el 3 de Nov. de 2016
        I suspect that you want a sliding maximum. One way to do that is
max( buffer(data, 10))
Another way is to use the image processing toolbox morphological routines. I seem to recall that dilation corresponds to max but I could be mistaken.
You could also loop.
3 comentarios
  Walter Roberson
      
      
 el 3 de Nov. de 2016
				Thanks, Guillaume, I went looking for such a function but could not find it; it is not cross-linked in the moving average routines.
Más respuestas (1)
  KSSV
      
      
 el 3 de Nov. de 2016
        data = rand(1,100) ;  % some random data 
data1 = reshape(data,10,[]) ;  % reshape to matrix with 10 rows 
val = max(data1) ;  % get maximum
10 comentarios
  Walter Roberson
      
      
 el 3 de Nov. de 2016
				That error about subscript indices tells us that you created a variable named max. If you have a variable named max then you can not call the MATLAB max() routine in the same scope.
Ver también
Categorías
				Más información sobre Data Type Identification 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!