How to get row index based on two columns

26 次查看(过去 30 天)
I have below cell array, I want to get the row index if 2nd column is "Continuous" & 3rd Column is <=80.
12 Continuous 891
72 Continuous 23
82 Continuous 562
222 Break 25
132 Continuous 23
832 Break 23
833 Break 23
Desired output(row index):
2
5

采纳的回答

Andrei Bobrov
Andrei Bobrov 2018-11-28
C = {12 'Continuous' 891
72 'Continuous' 23
82 'Continuous' 562
222 'Break' 25
132 'Continuous' 23
832 'Break' 23
833 'Break' 23};
C = cell2table(C);
rows = find(ismember(T.C2,'Continuous') & T.C3 <= 80);

更多回答(1 个)

Jos (10584)
Jos (10584) 2018-11-28
tf1 = strcmp(YourCellArray(:,2), 'Continuous')
tf2 = cat(1, YourCellArray{:,3}) <= 80
DesiredRows = find(tf1 & tf2)

产品


版本

R2016a

Community Treasure Hunt

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

Start Hunting!

Translated by