Using string compare on imported data
1 vue (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Jacob Barrett-Newton
le 11 Fév 2018
Commenté : Jacob Barrett-Newton
le 11 Fév 2018
I am very new to Matlab and have only ever used maple. I am trying to use string compare on huge imported data (26,000 rows) to a specific word to find the row that contains it.
I understand the basics of strcmp and can use it within matlab, but cannot figure out how to use it for a data set. So for example, I am currently working with the code:
s1 = 'RT'; s2 = {ImpD(:,4)}; TF = strcmp(s1, s2); find(TF);
ImpD(:,4) since I am looking for the specific text in the 4th column. I just don't think Matlab is realizing I am referencing the imported data. How can i fix this?
6 commentaires
Guillaume
le 11 Fév 2018
Is it string or char array? People use the two interchangeably but they are actually two very different types. comparisons are easier with strings.
Since ImpD is a table, what is the name of the fourth column?
Réponse acceptée
Guillaume
le 11 Fév 2018
If ImpD is a string array with a least four columns:
ismatch = ImpD(:, 4) == "RT"
to find "RT" in the fourth column.
If it were a table as you had initially:
ismatch = ImpD{:, 4} == "RT"
%or
ismatch = ImpD.column4name == "RT" %replace column4name by actual name
If you're going to wrap the above in a loop to find different strings and do something then it is very likely that there is a much better way. A better explanation of what you want to achieve and of the starting point would be required.
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Data Type Conversion dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!