How to get the smallest value in submatrices
2 views (last 30 days)
Show older comments
Hi,
I would appreciate if you could help me with this problem.
I have a big matrix , where are submatrices of the same size.
I want to get a vector containing the smallest elements in each submatrices. I want to avoid for loop as it might slow down my whole program.
Thanks.
0 Comments
Accepted Answer
Bruno Luong
on 2 Oct 2021
B=randi(9,10,2)
[m,n] = size(B);
k = 5;
if mod(m,k)
error('m must divisible by k');
end
minsub = min(reshape(B,[m/k k n]),[],[1 3]).'
More Answers (1)
Kevin Holly
on 2 Oct 2021
cellfun(@min,B,'UniformOutput',false)
%or
cellfun(@min,cellfun(@min,B,'UniformOutput',false),'UniformOutput',false)
6 Comments
Kevin Holly
on 2 Oct 2021
I was under the impression that you already had a big matrix B that contained submatrices. If this is not the case, how are your data organized? Are all the matrices in a folder/workspace individually?
See Also
Categories
Find more on Logical 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!