MATLAB Answers

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

1 view (last 30 days)
Paul Fishback
Paul Fishback on 1 May 2017
Edited: Stephen Cobeldick on 1 May 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?

  0 Comments

Sign in to comment.

Accepted Answer

xi
xi on 1 May 2017
cs=[{'A1'},{'A2'},{'A3'},{'B1'},{'B8'}];
X=[{'A1'},{'B8'}];
find(ismember(cs,X));
ans: 1 5

  2 Comments

Stephen Cobeldick
Stephen Cobeldick on 1 May 2017
You can construct these arrays in a much simpler way than that:
cs = {'A1','A2','A3','B1','B8'};
X = {'A1','B8'};

Sign in to comment.

More Answers (0)


Translated by