How to row reduce matrix with character string and number interval?
1 view (last 30 days)
Show older comments
ft=
'2010-06-0100:13:33' [95] 'AAL1799' 'MD82' 'DFW'
'2010-06-0100:13:33' [60] 'EGF3258' 'E135' 'DFW'
'2010-06-0100:13:33' [40] 'EGF3345' 'E135' 'RTR'
'2010-06-0100:13:33' [86] 'AAL1951' 'MD83' 'DFW'
'2010-06-0100:13:33' [72] 'AAL1227' 'MD82' 'DFW'
I would like to reduce my matrix to only have rows with column 2 greater than or equal to 60 but less than or equal to 90 and have column 5 have 'DFW'.
0 Comments
Accepted Answer
More Answers (1)
Azzi Abdelmalek
on 4 Sep 2012
Edited: Azzi Abdelmalek
on 4 Sep 2012
ft=ft(cell2mat(cellfun(@(x) x>=60 & x<=90,ft(:,2),'uni',false)),:)
ft=ft(cell2mat(cellfun(@(x) isequal(x,'DFW'),ft(:,5),'uni',false)),:)
2 Comments
Jan
on 14 Nov 2012
Both methods compute the same, but the first one is much faster and simpler:
strcmp(ft(:, 5), 'DFW')
cellfun(@(x) isequal(x,'DFW'), ft(:,5), 'uni', false)
See Also
Categories
Find more on Get Started with MATLAB in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!