How to select the indices of two arrays that satisfy two conditions using cellfun (no loops or ifs)?
    3 views (last 30 days)
  
       Show older comments
    
    German Preciat Gonzalez
 on 22 Aug 2018
  
    
    
    
    
    Commented: German Preciat Gonzalez
 on 22 Aug 2018
            Let's say I have two arrays:
 A = {'one(1)', 'two(1)', 'three(2)', 'four(2)', 'five(1)'};
 B = {'One', 'TWo', 'thrEE', 'Four', 'fiVe'};
I need to know the indices in the array A that have a: (1) and in the array B only one capital letter. For this example the indices are:
 idx = [1, 5]
Could you recommend me something using cellfun or something else without loops or ifs?
Thanks in advance
0 Comments
Accepted Answer
  Fangjun Jiang
      
      
 on 22 Aug 2018
        
      Edited: Fangjun Jiang
      
      
 on 22 Aug 2018
  
      IndA=contains(A,'(1)');
IndB=cellfun(@(x) sum(x)==1, isstrprop(B,'upper'));
Index=find(and(IndA,IndB))
More Answers (0)
See Also
Categories
				Find more on Cell Arrays 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!