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

2 views (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)


Find more on Migrate GUIDE Apps in Help Center and File Exchange




Community Treasure Hunt

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

Start Hunting!