How to find multiple table column numbers by column names?
4 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
Chao Zhang
il 21 Giu 2021
Commentato: Chao Zhang
il 22 Giu 2021
Using the following code, can get the column number of 'rk_mill_tonnage' in the table.
col_ind_rmt = find(string(G_Value.Properties.VariableNames) == "rk_mill_tonnage");
However, the 'rk_mill_tonnage' might be differnet from table to table, for example, 'ore_mill_tonnage' in another table
col_ind_rmt = find(string(G_Value.Properties.VariableNames) == "rk_mill_tonnage" || 'ore_mill_tonnage');
The above code is wrong, as the '||' is using in scalar.Therefore, is there any other ways to get the column number among the multiple names?
0 Commenti
Risposta accettata
Scott MacKenzie
il 21 Giu 2021
Modificato: Scott MacKenzie
il 21 Giu 2021
col_ind_rmt = find(string(G_Value.Properties.VariableNames) == "rk_mill_tonnage" | ...
string(G_Value.Properties.VariableNames) == 'ore_mill_tonnage');
0 Commenti
Più risposte (1)
dpb
il 21 Giu 2021
Modificato: dpb
il 21 Giu 2021
col_ind_rmt = find(string(G_Value.Properties.VariableNames) == "rk_mill_tonnage" || 'ore_mill_tonnage');
Just replace "||" with "|" would make the above work but simpler coding would be
col_ind_rmt=find(contains(G_Value.Properties.VariableNames,'_mill_tonnage'));
that will return either of the above but not return 'mill_tonnage' if there were a name without a prefix and underscore.
Or, of course, you can get as sophisticated as desired/needed by using regular expressions
Vedere anche
Categorie
Scopri di più su Tables 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!