Removing elements from matrix

2 Ansichten (letzte 30 Tage)
Marin
Marin am 14 Mai 2012
Kommentiert: Julia am 5 Aug. 2014
Hi everyone,
I was wonderning is there an easy way to remove some of the elemetts from matrix. I have a data array data(300x2) and I want to remove all rows that have the value in the second column smaller than 0.18.
I tried something like
data=data(data(:,2)<0.18);
and similar combinations but it doesn't work.
Thank you in advance for any advice you can offer.
  2 Kommentare
harsha
harsha am 5 Aug. 2014
hi
i have a 49x49 matrix and i want to delete the single element at center of the matrix.how can i do so?please help.
Julia
Julia am 5 Aug. 2014
What do you mean with delete? Set to 0? You can delete the row or the column containing the element, but you cannot create a hole in the middle of the matrix.

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Andrei Bobrov
Andrei Bobrov am 14 Mai 2012
data=data(data(:,2)>=0.18,:);
ADDED after Marin's comment
simple example
data1 =[...
2 3
5 8
10 3
4 6
6 7]
data2 =[...
9 2
10 2
6 3]
data1(ismember(data1(:),data2(:))) = nan
  1 Kommentar
Marin
Marin am 14 Mai 2012
yeah, of course, now I see I could have solved it myself, but I've been too hasty. :)
thank you very much :)
another thing, if you can help me also.
if I have two data sets data1(300x2) and data2(50x2) and data2 contains elements that are in data1 (of course not all of them).
how do I create a matrix which has the data that is in data1 and not in data2 ?

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

Marin
Marin am 15 Mai 2012
Excellent. Thank you!

Kategorien

Mehr zu Matrices and Arrays finden Sie in Help Center und File Exchange

Produkte

Community Treasure Hunt

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

Start Hunting!

Translated by