How to check if a 3d matrix has any 2D submatrix with non zero elements?
조회 수: 1 (최근 30일)
이전 댓글 표시
Hi all,
I have a 3D matrixnd I need to check if it has any sub 2D matrix with non zero elements.
a(:,:,1) =
0 0
0 0
a(:,:,2) =
1 0
0 0
the results should be
[0 1].
Thanks
cheers
댓글 수: 0
채택된 답변
Sean de Wolski
2014년 5월 30일
pagesWithNonZeros = squeeze(any(any(x,1),2))
You can pass dim into any to test if there are any nonzero elements in that dimension.
댓글 수: 0
추가 답변 (1개)
Hugo
2014년 5월 30일
You can just do
[any(any(a(:,:,1)>0)),any(any(a(:,:,2)>0))]
or just shorter
nonzero2D=@(a,k)any(any(a(:,:,k)>0))
[nonzero2D(a,1), nonzero2D(a,2)]
Is that what you want?
참고 항목
카테고리
Help Center 및 File Exchange에서 Creating and Concatenating Matrices에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!