delete zeros rows and columns

1 view (last 30 days)
i try do delete rows and columns that are zeros but it cut also part of shape .I use this code
u=I;
old=[];
new=all(~u);
while ~isequal(old,new)
u(new,:)=0;
old=new;
new=all(~u);
end
u(new,:)=[];
u(:,new)=[];
av=u;
av(~any(u,2),:)=[];
%radious of puple
figure, imshow(av,[]);
so any other way to do that

Accepted Answer

Jonathan Sullivan
Jonathan Sullivan on 2 Mar 2012
u = I;
zc = ~any(u);
u(:,zc) = [];
zr = ~any(u,2);
u(zr,:) = [];

More Answers (2)

Walter Roberson
Walter Roberson on 1 Mar 2012
u = I;
zc = ~any(u);
zr = ~any(u,2);
u(zc,zr) = [];
imshow(u, []);
  1 Comment
Isee You
Isee You on 2 Mar 2012
i try this code but i get this error
Subscripted assignment dimension mismatch.
Error in first_step_to_final (line 110)
u(zc,zr) = [];
why? how to solve it

Sign in to comment.


Andrea
Andrea on 30 May 2012
data( all( ~any( data), 2 ), : ) = []; % removes all rows with all zero
data( :, all( ~any( data ), 1 ) ) = []; % and columns

Community Treasure Hunt

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

Start Hunting!