Delete specific rows from a matrix

Hi all,
i want to delete rows which with the values 1 in their columns, how can i do it ?
For example:
A= [7,7;2,2;1,1;3,3]
Becomes
A=[7,7;2,2;3,3]
Thank you !
P.s I've searched other posts before posting this .. couldn't find any help

 Accepted Answer

Joseph Cheng
Joseph Cheng on 18 Aug 2014
Edited: Joseph Cheng on 18 Aug 2014
the use of the function any() can find where there are any numbers equal to one.
A= [7,7;2,2;1,1;3,3]
A(any(A==1,2),:)=[]
by using the dimension modifier in the any() function, i can return which rows or columns contain the logical 1 which is when A ==1.

2 Comments

Thank you ! what the '2' in the code line
A(any(A==1,2),:)=[]
stands for ?
oh.. sorry meetings all day. the two is the dimension modifier. if you check the help for the any ('>>help any') the 2 stands for rows and 1 stands for columns. similar to the sum() function where you can sum a matrix in the row or column directions based on the dimension parameter.

Sign in to comment.

More Answers (1)

Categories

Asked:

Ron
on 18 Aug 2014

Commented:

on 18 Aug 2014

Community Treasure Hunt

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

Start Hunting!