ismember error
    2 次查看(过去 30 天)
  
       显示 更早的评论
    
Hi,
x0=find(ismember(A,B)==1) is giving me error ??? Error using ==> cell.ismember at 28 Input must be cell arrays of strings.
A is a cell array that has the following format: '580135' '803111' '803111' '803111' '373298' '373298'
Bis a 1x1 cell wit the following format 377298;
I don't know why A has '' and B doesn't ,which could be the source of error.
0 个评论
回答(2 个)
  Paulo Silva
      
 2011-8-16
        It works just fine in this example, you also don't need the ==1 in the find argument.
A={'580135' '803111' '803111' '803111' '377298' '373298' '373298'}
B={'377298'}
find(ismember(A,B))
0 个评论
  Walter Roberson
      
      
 2011-8-16
        Please clarify whether the content of B{1} is numeric or a string. It would need to be a string for this purpose.
Is this an example, with more values of B to be added later, or are you looking to find B within A? If you are looking to find B within A then you would use ismember(B,A)
The == 1 is redundant with ismember() as it is all 0 or 1 anyhow. find(ismember(A,B))
2 个评论
  Jan
      
      
 2011-8-16
				@Joseph: Then ISMEMBER is *not* what you need. It cannot compare strings with numbers. What do you expect as result of such a comparison?
另请参阅
类别
				在 Help Center 和 File Exchange 中查找有关 Cell Arrays 的更多信息
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!



