Deleting rows in Matlab

I have a large column vector (col1) I have the following code:
notcontacts=(col1(:,1)>600);
col1=col1.*notcontacts
Now I want to to delete all of the zeros that are in the column of data so i have the following (col2) which is only made up of the values that are greater than less than 600.

3 Kommentare

Oleg Komarov
Oleg Komarov am 9 Mai 2012
Not very clear, so do you want values which are not 600? (greater and less...)
charles atlas
charles atlas am 9 Mai 2012
I am sorry, typo... I want a column (col2) of numbers that are less than 600. Ex:
col1=[0 0 456 245]
then after column manipulation I want:
col2=[456 245]
charles atlas
charles atlas am 9 Mai 2012
I meant to say less than 600 not "greater than less than"

Melden Sie sich an, um zu kommentieren.

Antworten (1)

Oleg Komarov
Oleg Komarov am 9 Mai 2012

0 Stimmen

EDITED
idx = idx = col1(:,1) < 600 & col1(:,1) ~= 0;
col2 = col1(idx, 1);

4 Kommentare

Richard Brown
Richard Brown am 9 Mai 2012
urgh, this question illustrates how bad this code font is! we can't tell the difference between col1, co11, and coll!
Geoff
Geoff am 10 Mai 2012
That's odd... It renders okay in Firefox on Windows. Using some kind of courier-based font. But I'm sitting rather close to a biggish screen.
Geoff
Geoff am 10 Mai 2012
@Oleg : You forgot the removal of zeros:
idx = col1(:,1) < 600 & col1(:,1) ~= 0;
Oleg Komarov
Oleg Komarov am 10 Mai 2012
Thanks Geoff, amended.

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Startup and Shutdown finden Sie in Hilfe-Center und File Exchange

Produkte

Gefragt:

am 9 Mai 2012

Community Treasure Hunt

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

Start Hunting!

Translated by