How to find the indices within a matrix where its elements are identical along the third dimension

조회 수: 1 (최근 30일)
Hi all,
I am scratching my head to determine a way where I can find the indices within a multi-dimensional matrix where its elements are identical (i.e. equal) along the third dimension.
In specific I have a multi-dimensional matrix:
M = rand(100,100,3) ;
Lets say somewhere in that matrix, along the third dimension we have some elements that are equal, which we would be able to identify with the following way.
idx = M(:,:,1) == M(:,:,2) & M(:,:,2) == M(:,:,3) ;
Admitedly, the above would give me what I want but when the third dimension becomes much greater than 3 (as it does in my case), it becomes quite cumbersome to code. I would therefore appreciate your help with this.
Regards
KMT.

채택된 답변

Matt J
Matt J 2021년 2월 3일
편집: Matt J 2021년 2월 3일
idx = all( M==M(:,:,1) , 3);

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Logical에 대해 자세히 알아보기

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by