filter table by character string entry
73 次查看(过去 30 天)
显示 更早的评论
Hello,
I have table T which contains string entries in the second column (named 'column_name').
Two questions:
- How can I filter the table (or create a new table), so that only those rows are included whose 2nd column entry equals the filter parameter (e.g. 'FieldSlew1')?
- How can I filter the table (or create a new table), so that only those rows are included whose 2nd column entry contain the filter parameter (e.g. 'FieldSlew')?
For information regarding formats:
When querying, I get the following results
>> T(1, 2)
ans =
table
column_name
____________
'FieldSlew1'
I have tried using "for" loops, but this takes forever.
Thank you for advice,
Dan
采纳的回答
Andreas Kvalbein Fjetland
2019-1-30
编辑:Andreas Kvalbein Fjetland
2019-1-30
Hi Dan,
try this method out.
%create random table
t1 = [1,2,3,4]';
t2 = {'Hei','boo','Hei','boo'}';
tbl = table();
tbl.t1 = t1;
tbl.t2 = t2;
% Convert to categorical, as i presume this is reoccuring values
tbl.t2 = categorical(tbl.t2)
% index rows with the correct variables in column
idx = tbl.t2 == 'boo';
% create table based on index
newtbl = tbl(idx,:);
0 个评论
更多回答(0 个)
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!