Extract all columns from a table where the column names "start with" a string
187 次查看(过去 30 天)
显示 更早的评论
How can I extract all columns from a table where the column names "start with" a string?
For example, in
mytable = array2table(NaN(4,5));
mytable.Properties.VariableNames = {'A1', 'A2', 'B1', 'F2', 'F4'};
How would I extract all the "F*" columns in to a new table?
0 个评论
采纳的回答
Walter Roberson
2019-8-28
mask = startsWith( mytable.Properties.VariableNames, 'F');
Fcols = mytable(:,mask);
更多回答(1 个)
Arnaud Delorme
2022-5-27
编辑:Arnaud Delorme
2022-5-27
colNames = fieldnames(mytable);
[~,inds] = intersect(colNames, { 'A1' 'A2' } );
mytable = mytable(:,sort(inds));
1 个评论
Walter Roberson
2022-5-27
This would not get you anything that mytable(:, { 'A1' 'A2' } ) would not give, other than preserving relative order of variables.
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Design Scripting 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!