how to find a string within a cell array

I have a cell array like this:
'10 Hz: Time_abs'
<1x2 cell>
<1x2 cell>
<1x2 cell>
<1x2 cell>
<1x2 cell>
<1x2 cell>
<1x2 cell>
'10 Hz: Time_abs'
<1x2 cell>
<1x2 cell>
<1x2 cell>
at first I need to find in which rows there is '10 Hz: Time_abs' and then delete the corresponding row. I can not use strcmp or isstr because the other rows are cell and are not comparable with a string.
can anybody help me with that,I really appreciate that.
best, Navid

1 Comment

Why not iterate over each element within the cell array and copy those that aren't strings (that match '10 Hz: Time_abs') to another cell array?

Sign in to comment.

 Accepted Answer

p='10 Hz: Time_abs'
A={'10 Hz: Time_abs';{'yytt' 'rr'};{'yyt2t' 'rr1'}}
A(cellfun(@(x) any(strcmp(x,p)),A))=[]

3 Comments

Many thanks,it's working,is it possible to have the index of these rows?
p='10 Hz: Time_abs'
A={'10 Hz: Time_abs';{'yytt' 'rr'};{'yyt2t' 'rr1'}}
idx=find(cellfun(@(x) any(strcmp(x,p)),A))
I really appreciate your help,thanks

Sign in to comment.

More Answers (0)

Products

Asked:

on 27 Apr 2014

Commented:

on 27 Apr 2014

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!