matlab如何判断数组每列有相同的数值,并返回不同的数值
时间: 2023-06-19 18:10:38 浏览: 760
判断数组里面的数是否有相同的元素.cpp
可以使用unique函数来找出每列不同的数值,然后使用ismember函数来判断每个元素是否在不同的数值中出现过。
以下是一个示例代码:
```matlab
A = [1 2 3 4; 2 3 4 5; 3 4 5 6; 4 5 6 7];
% 找出每列不同的数值
col_uniq = arrayfun(@(x) unique(A(:,x)), 1:size(A,2), 'UniformOutput', false);
% 判断每个元素是否在不同的数值中出现过
result = false(size(A));
for i = 1:size(A,2)
for j = 1:size(A,1)
result(j,i) = ~ismember(A(j,i), setdiff([col_uniq{:}], A(j,i)));
end
end
% 输出结果
disp(result)
```
这里的A是一个4行4列的矩阵,代码输出一个与A相同大小的逻辑矩阵result,其中result(i,j)为true表示A(i,j)在该列中没有重复出现。
阅读全文