How to find occurrences of a vector of strings in a cell string.

2 vues (au cours des 30 derniers jours)
Paul Fishback
Paul Fishback le 1 Mai 2017
Modifié(e) : Stephen23 le 1 Mai 2017
I have a cell string, named Channels, that lists 69 distinct EEG channels, A1, A2, ...
To find an occurrence of a particular channel, e.g. B8, I use something like
find(ismember(Channels,'B8'))
which returns the correct index value of 25.
Now suppose I have a vector of a few of the channels, e.g. X=['A1','A2','B8'] and I want to find which indices in the cell string Channels correspond to those in X. In other words is there an elegant way to return the index values 1, 2, and 25?

Réponse acceptée

xi
xi le 1 Mai 2017
cs=[{'A1'},{'A2'},{'A3'},{'B1'},{'B8'}];
X=[{'A1'},{'B8'}];
find(ismember(cs,X));
ans: 1 5
  2 commentaires
Paul Fishback
Paul Fishback le 1 Mai 2017
Perfect! Thanks!
Stephen23
Stephen23 le 1 Mai 2017
Modifié(e) : Stephen23 le 1 Mai 2017
You can construct these arrays in a much simpler way than that:
cs = {'A1','A2','A3','B1','B8'};
X = {'A1','B8'};

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Data Import and Analysis 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!

Translated by