remove rows in cell if a column is equal to a number

1 view (last 30 days)
So this is a simplified version of what I have, I want to remove the rows in X that match the number in the cell Y, so all I would have left is the first row. My real data has over a million rows, is there a quick way to do this? Thanks for your help!
X =
'B737' 'DAL1240' [10]
'MD88' 'DAL1542' [ 9]
'B747' 'DAL1284' [ 9]
'B737' 'DAL1532' [ 4]
'A320' 'DAL1417' [ 4]
Y =
[9]
[4]

Answers (1)

C.J. Harris
C.J. Harris on 14 Nov 2012
X = {'B737' 'DAL1240' [10]
'MD88' 'DAL1542' [ 9]
'B747' 'DAL1284' [ 9]
'B737' 'DAL1532' [ 4]
'A320' 'DAL1417' [ 4]};
Y = {[9]
[4]};
X(ismember(cell2mat(X(:,3)),cell2mat(Y)), :) = [];
  2 Comments
Azzi Abdelmalek
Azzi Abdelmalek on 14 Nov 2012
Edited: Azzi Abdelmalek on 14 Nov 2012
Tiffany you have to accept one of the answers that answers your question by clicking on accept this answer

Sign in to comment.

Categories

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