Show filtered column of a cell array based on filtered cell header

1 view (last 30 days)
I want to show filtered column of a cell array based the header .Im using matlab 2016b
For example i have cell data such as the following. 1st row is the column title that i intend to show as a list item.
data= {'A' ,'B' ,'C';'1', '2', '3';'1' ,'2', '3';'1', '2', '3'}
If user selects A & B
selected={'A' 'B'}
the UItable will show only 1st nd 3rd column only
this should be the result:
showedcolumn= {'A' ,'C';'1', '3';'1' ,'3'' 1', '3'}

Accepted Answer

Setsuna Yuuki.
Setsuna Yuuki. on 25 Nov 2020
Edited: Setsuna Yuuki. on 25 Nov 2020
Hi :D
data= {'A' ,'B' ,'C';'1', '2', '3';'1' ,'2', '3';'1', '2', '3'};
fprintf("input with a space \n") %Example: a b or a c or a b c
x = string(input("",'s'));
x = upper(strsplit(x));
a = contains(data,x);
a = a(1,1:3);
k = find(~a)
t = cell2table(data);
t.Properties.VariableNames = ({'A','B','C'});
t = removevars(t,k)

More Answers (0)

Categories

Find more on Scope Variables and Generate Names in Help Center and File Exchange

Products


Release

R2016b

Community Treasure Hunt

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

Start Hunting!