matlab - 我如何判断矩形矩阵是否在 MATLAB 中有重复的行?

标签 matlab matrix duplicates

我有一个 n×m 的矩形矩阵 (n != m)。在 MATLAB 中找出其中是否有重复行的最佳方法是什么?查找重复索引的最佳方法是什么?

最佳答案

使用 unique() 查找不同的行值。如果最终行数较少,则存在重复项。它还会为您提供每个不同值的一个位置的索引。所有其他行索引都是您的副本。

x = [
    1 1
    2 2
    3 3
    4 4
    2 2
    3 3
    3 3
    ];
[u,I,J] = unique(x, 'rows', 'first')
hasDuplicates = size(u,1) < size(x,1)
ixDupRows = setdiff(1:size(x,1), I)
dupRowValues = x(ixDupRows,:)

关于matlab - 我如何判断矩形矩阵是否在 MATLAB 中有重复的行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2510030/

相关文章:

string - 如何将一个字符串分割成n个长度的子字符串?

matlab - 创建对角矩阵(更高维度)

matlab - Numpy vs Matlab float 到 uint8 转换

matrix - 使用 awk 从表中创建矩阵

ruby - Ruby 中的有限矩阵

python - 如何检查特定 Pandas 数据框列中的值是否唯一

Matlab - 输入验证

c++ - 初始化二维数组 C++

mysql - 简单删除sql表中的重复内容

python - 如何在列表中找到相同的值并将新列表组合在一起?