如何在matlab中找到具有重复的矩阵的每一行的索引?

Mat*_*ris 7 matlab duplicate-data matrix duplicates sparse-matrix

我想找到具有重复的矩阵的所有行的索引.例如

A = [1 2 3 4
     1 2 3 4
     2 3 4 5
     1 2 3 4
     6 5 4 3]
Run Code Online (Sandbox Code Playgroud)

要返回的向量是 [1,2,4]

很多类似的问题建议使用unique我已尝试过的功能,但最接近我想要的是:

[C, ia, ic] = unique(A, 'rows')

ia = [1 3 5]
m = 5;
setdiff(1:m,ia) = [2,4]
Run Code Online (Sandbox Code Playgroud)

但是使用unique我只能提取行的第2,第3,第4 ......等实例,我还需要获取第一行.有什么方法可以做到这一点吗?

注意:它必须是一个不涉及循环遍历行的方法,因为我正在处理大型稀疏矩阵.

Dan*_*Dan 4

怎么样:

[~, ia, ic] = unique(A, 'rows')

setdiff(1:size(A,1), ia( sum(bsxfun(@eq,ic,(1:max(ic))))<=1 ))
Run Code Online (Sandbox Code Playgroud)