How to remove all the rows containing a substring from a table?

3 次查看(过去 30 天)
I need to remove all the rows containing the substring Downstream from the table.

采纳的回答

Wan Ji
Wan Ji 2021-8-11
Assume the table is named 'myTable'.
Then
p = arrayfun(@(i)strncmpi(myTable.beregnings{i}(end:-1:1),'maertsnwod',10),(1:1:size(myTable,1))','uniform',true);
newTable = myTable(~p,:);
Your newTable is therefore what you want!

更多回答(1 个)

Stephen23
Stephen23 2021-8-11
编辑:Stephen23 2021-8-11
Simple and efficient MATLAB approach:
A = [0;1;2;3;4];
B = ["cat";"hat";"sat_Downstream";"fat";"rat_Downstream"];
C = [5;6;7;8;9];
T = table(A,B,C)
T = 5×3 table
A B C _ ________________ _ 0 "cat" 5 1 "hat" 6 2 "sat_Downstream" 7 3 "fat" 8 4 "rat_Downstream" 9
X = contains(T.B,'Downstream'); % or endsWith
T(X,:) = []
T = 3×3 table
A B C _ _____ _ 0 "cat" 5 1 "hat" 6 3 "fat" 8

类别

Help CenterFile Exchange 中查找有关 MATLAB Report Generator 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by