Find column names with particular names in MATLAB table
23 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
Dhruv Ghulati
il 21 Dic 2015
Commentato: Peter Perkins
il 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 Commento
Risposta accettata
Walter Roberson
il 21 Dic 2015
finalnbs(:,strncmp(finalnbs.Properties.VariableNames, 'connected', length('connected')) ) = [];
0 Commenti
Più risposte (2)
Renato Agurto
il 21 Dic 2015
Modificato: Renato Agurto
il 21 Dic 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 Commenti
Joseba Moreno
il 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 Commenti
Walter Roberson
il 14 Feb 2019
With new enough matlab you can use contains() to test whether a substring occurs somewhere in a string .
Vedere anche
Categorie
Scopri di più su Environment and Settings in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!