Find column names with particular names in MATLAB table
37 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Dhruv Ghulati
am 21 Dez. 2015
Kommentiert: Peter Perkins
am 17 Feb. 2019
Hi there,
I have a massive table with 408 columns in MATLAB. I want to get rid of columns that start with the word "connected". Instead of having to manually check the table and do something like
finalnbs(:,212:364) = [];
Where
finalnbs
is the table, how do I find all columns in finalnbs which start with connected e.g.
connected*
And then remove those?
1 Kommentar
Akzeptierte Antwort
Walter Roberson
am 21 Dez. 2015
finalnbs(:,strncmp(finalnbs.Properties.VariableNames, 'connected', length('connected')) ) = [];
0 Kommentare
Weitere Antworten (2)
Renato Agurto
am 21 Dez. 2015
Bearbeitet: Renato Agurto
am 21 Dez. 2015
Hello
if "titles" is the first row of your table, then:
titles = finalnbs(1,:);
%Select the columns that should stay
idxs = cellfun(@(x) length(x) < 9 || ~strcmp(x(1:9),'connected'),titles);
finalnbs = finalnbs(:,idxs);
0 Kommentare
Joseba Moreno
am 14 Feb. 2019
Hello,
I have a similar problem but in my case I would like to remove the columns which contain the word "free".
How can I do that?
Thanks!
Joseba
2 Kommentare
Walter Roberson
am 14 Feb. 2019
With new enough matlab you can use contains() to test whether a substring occurs somewhere in a string .
Siehe auch
Kategorien
Mehr zu Electrical Block Libraries finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!