find min or max value element from more than two matrices
    17 views (last 30 days)
  
       Show older comments
    
I know how we can find min or max value element from two matrices. For more than two matrices we can do two by two and then compare but I was wondering if there is any other simple way to find min or max value element from more than two matrices?
0 Comments
Accepted Answer
  George Papazafeiropoulos
      
 on 2 Jun 2014
        
      Edited: George Papazafeiropoulos
      
 on 2 Jun 2014
  
      % data
matrix1=rand(2);
matrix2=rand(3);
matrix3=rand(4);
% engine
c=nan(4,4,3);
c(1:2,1:2,1)=matrix1;
c(1:3,1:3,2)=matrix2;
c(1:4,1:4,3)=matrix3;
% result
d=min(c,[],3)
e=max(c,[],3)
3 Comments
  Image Analyst
      
      
 on 2 Jun 2014
				Are you sure? It's not what you asked for. You didn't say that you wanted an array of maxes and an array of mins after the individual arrays were all lined up in the upper left corner. And the values will depend on where you align the smaller matrices over the larger matrices.
More Answers (1)
  Image Analyst
      
      
 on 2 Jun 2014
        For 3 matrices, you can do
minValue = min([a(:);b(:);c(:)])
maxValue = max([a(:);b(:);c(:)])
It's easy to see how to adapt it for more matrices.
2 Comments
  dpb
      
      
 on 2 Jun 2014
				
      Edited: Image Analyst
      
      
 on 2 Jun 2014
  
			Good 'un to use (:) to avoid the dimensions problem...don't know why didn't think of it. I removed the sorrier response.
See Also
Categories
				Find more on Resizing and Reshaping Matrices in Help Center and File Exchange
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!



