Clean solution to shrink matrices

4 views (last 30 days)
I have pre-allocated a large Matrix X = (80000,8). for e.g zeros(80000,8); This I did for speed. After several operations I only filled say 1000 rows of the matrix and remaining are all zeros as I pre-allocated all elements to be zero to start with. Now I would like the shrink the matrix to smaller one by eliminating all the trivial rows in the end. What is the cleanest way of doing them?

Accepted Answer

Prema Gopalakrishnan
Prema Gopalakrishnan on 23 Jul 2019
X = X(1:n,:);

More Answers (1)

John D'Errico
John D'Errico on 9 May 2017
As long as you know how many rows are filled (call it n, here n is 1000), then just do
X = X(1:n,:);


Find more on Resizing and Reshaping Matrices 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!