我需要在MATLAB中比较两个表的内容,更确切地说是两列(每个表一个列),以查看第一列的每个元素(如果第二列中的元素相等)。
我应该使用for循环还是执行此操作的现有MATLAB函数?
回答:
如果顺序很重要,则进行
逐元素比较 ,然后使用
全部
%# create two arrays A = [1,2;1,3;2,5;3,3]; B = [2,2;1,3;1,5;3,3]; %# compare the second column of A and B, and check if the comparison is `true` for all elements all(A(:,2)==B(:,2)) ans = 1 如果顺序不重要并且所有元素都是唯一的,请使用
ismember
all(ismember(A(:,1),B(:,1)) ans = 1 如果顺序不重要,并且有重复,请使用
sort
all(sort(A(:,1))==sort(B(:,2))) ans = 0
更多&回答...