Create variable from cell array based on strings

1 view (last 30 days)
I have a cell array something like this...
if true
Var1=
'A' 6
'B' 7
'B' 7
'A' 8
'C' 10
'A' 9
'A' 3
end
I want to pull out the values into a new variable which correspond only to 'A'
I.e generate this variable
if true
Var2=
'A' 6
'A' 8
'A' 9
'A' 3
end

Accepted Answer

Mohammad Abouali
Mohammad Abouali on 2 Apr 2015
Var1={'A',6; ...
'B',7; ...
'B',7; ...
'A',8; ...
'C',10; ...
'A',9; ...
'A',3};
Var2=Var1(strcmpi(Var1(:,1),'A'),:)
Var2 =
'A' [6]
'A' [8]
'A' [9]
'A' [3]

More Answers (1)

Thomas Koelen
Thomas Koelen on 2 Apr 2015
Edited: Thomas Koelen on 2 Apr 2015
I think this should work. I am on mobile though so I can't check it atm.
index=strcmp(var1(:,1),'A');
index=index(:,any(index));
var2=var1(index,:);
  1 Comment
Hillaryfor2016
Hillaryfor2016 on 2 Apr 2015
Cheers, haven't tried it but thanks for the help! (The 1st answer worked fine!)

Sign in to comment.

Categories

Find more on Characters and Strings in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!