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

1 view (last 30 days)
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

Image Analyst
Image Analyst on 2 Apr 2013
rowsWithOnes = find(vector == 1)
vector(rowsWithOnes(1:158)) = []; % Delete first 158
vector(rowsWithOnes(end-19:end)) = []; % Delete last 20

More Answers (1)

Azzi Abdelmalek
Azzi Abdelmalek on 2 Apr 2013
Edited: Azzi Abdelmalek on 2 Apr 2013
idx=find(A)
idx1=[idx(1:158) idx(end-19:end)]
A(idx1)=[];

Categories

Find more on Multidimensional Arrays 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!