Subset Table using an array of strings
12 ビュー (過去 30 日間)
古いコメントを表示
I am using the following code to select a subset of my table based on column names:
table_subset = table(:,ismember(table.Properties.VariableNames, {'col1' 'col2'}));
However, I would like to provide the cell input based on an existing array of column names, like so:
list_of_cols = ['col1' 'col2']
table_subset = table(:,ismember(table.Properties.VariableNames, list_of_cols));
But I am getting an empty table.
0 件のコメント
回答 (1 件)
Dave B
2021 年 11 月 12 日
編集済み: Dave B
2021 年 11 月 12 日
I think you want
list_of_cols = {'col1' 'col2'}
or
list_of_cols = ["col1" "col2"]
because list_of_cols as you wrote it evaluates to the wrong thing:
list_of_cols = ['col1' 'col2']
Here's a quick test:
t=table(1,2,3);
list_of_cols = {'Var1' 'Var3'};
t(:,ismember(t.Properties.VariableNames,list_of_cols))
参考
カテゴリ
Help Center および File Exchange で Logical についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!