Cutting rows and columns from a matrix

4 views (last 30 days)
If A = [0,0,0,0;0,0,0,0;0,0,1,1;0,0,1,1], how can i cut out the null comumns and rows to acheive B = [1,1;1,1]

Accepted Answer

Jos (10584)
Jos (10584) on 10 Feb 2011
See ANY (or ALL). You need a two step approach:
A = [1 0 1 0 ; 1 0 1 0 ; 0 0 0 0]
B = A(any(A,2),:) ; % remove null rows
B = B(:,any(A,1)) % remove null columns

More Answers (1)

Andrei Bobrov
Andrei Bobrov on 20 May 2011
B = zeros(sum(any(A,2)),sum(any(A)));
B(:)=A(A~=0);

Categories

Find more on Interpolation in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!