Comparing vectors and determining unique values?
2 次查看(过去 30 天)
显示 更早的评论
Let's say I have a 3x3 cell array. In each cell is a vector. For a given cell, how do I determine the unique number the vector of that cell has that no others in the cell array has.
Or in a simpler case, consider a 2x2 cell array, C.
C=
[1 0 3 4] [0 2 3 0]
[0 2 0 4] [0 2 3 4]
How can I take the vector in C{1,1} and compare it to the other vectors and pull out the number "1" which is unique among the vectors in the cell array.
0 个评论
回答(2 个)
per isakson
2015-5-16
编辑:per isakson
2015-5-16
Try this script
cac = {
[1 0 3 4] [0 2 3 0]
[0 2 0 4] [0 2 3 4] };
%
ixa = ( 1 : numel(cac) ); % linear indices of all vectors
ix1 = sub2ind( size(cac), 1, 1 ); % linear index of selected vector
the_other_vectors = cat( 2, cac{setdiff(ixa,ix1)} );
%
setdiff( cac{ix1}, the_other_vectors )
it returns
ans =
1
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Matrices and Arrays 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!