How to delete rows from the bottom of matrix

조회 수: 2 (최근 30일)
Betina Isbak
Betina Isbak 2013년 9월 16일
Hi everyone,
I have A = [1 2 3 4 5; 1 0 0 0 0; 1 2 3 4 5; 1 2 3 4 5; 1 0 0 0 0; 1 0 0 0 0 ]
I want to delete the rows that contain 0 in the bottom. Then I can’t use
condition=A == 0;
A(condition,:)=[];
as it will delete row 2 as well. I just want to remove the rows in the bottom until the rows start to contain numbers. The number of rows in the bottom can change.
Any ideas? Thanks!!
  댓글 수: 1
Jan
Jan 2013년 9월 16일
편집: Jan 2013년 9월 16일
The description is not clear. Does they mean, that you want to delete the last two rows only? All rows contain numbers, because 0 is a number also. And no row contains zeros only. Please edit the question and improve the description.

댓글을 달려면 로그인하십시오.

채택된 답변

Andrei Bobrov
Andrei Bobrov 2013년 9월 16일
out = A(flipud(cumsum(flipud(all(A,2)))>0),:);

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Performance and Memory에 대해 자세히 알아보기

태그

Community Treasure Hunt

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

Start Hunting!

Translated by