How can I delete a certain number of rows in a vector?

Dear all, I have a 2505*1 vector with only 1 and 0. The number 1 occurs 178 times. I want to delete the first 158 rows with an 1 and the last 20 rows and the rows with 0 should stay! How can I do that? Thank you in advance!

 Accepted Answer

rowsWithOnes = find(vector == 1)
vector(rowsWithOnes(1:158)) = []; % Delete first 158
vector(rowsWithOnes(end-19:end)) = []; % Delete last 20

More Answers (1)

idx=find(A)
idx1=[idx(1:158) idx(end-19:end)]
A(idx1)=[];

Categories

Find more on Powertrain Blockset 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!