Extract value in cell array based on

Hello, I have a 1x3 cell array:
str = strings(6,1)
str(1) = 'A'
str(2) = 'B'
str(3) = 'A'
str(4) = 'B'
str(5) = 'A'
str(6) = 'B'
str2 = strings(6,1)
str(1) = 'r'
str(2) = 'r'
str(3) = 't'
str(4) = 's'
str(5) = 't'
str(6) = 'm'
a = [345; 344; 234; 234; 235; 231]
CA{1} = str
CA{2} = str2
CA{3} = a
My task is to extract certain values of the third cell vector based on some conditions pertaining to the first two cell vectors, e.g.: If cellvector1 = 'A' AND cellvector2 = 't' --> what is the corresponding value in cellvector 3? (so in this case 234 and 235)
Thank you very much in advance!

 Accepted Answer

s = [str,str2];
strvector = string({'A','t'});
out = a(ismember([str,str2],string({'A','t'}),'rows'))

1 Comment

EDIT: It works now, my mistake, thank you very much!!!
Thank you for your reply! But if I run the code it returns:
out =
0×1 empty double column vector
But I need it to return the numbers 234 and 235..

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!