消除重复项——matlab中的变量

消除重复项——matlab中的变量,matlab,duplicate-removal,duplicate-data,Matlab,Duplicate Removal,Duplicate Data,我有一个矩阵,它的一部分如下所示: 4080530 92 -- rid of this 4085908 92 -- keep this 4086589 93 -- rid 4091453 93 -- rid 4104393 93 -- rid 4112841 93 -- rid 4122958 93 -- rid 4130815 93 -- rid 4142617 93 -- rid 4152386 93 -- keep this 4230963 94 4242541 94 4243222 9

我有一个矩阵,它的一部分如下所示:

4080530 92 -- rid of this 
4085908 92 -- keep this
4086589 93 -- rid
4091453 93 -- rid
4104393 93 -- rid
4112841 93 -- rid
4122958 93 -- rid
4130815 93 -- rid
4142617 93 -- rid
4152386 93 -- keep this
4230963 94
4242541 94
4243222 95
4253979 95
在第2列中,可以看到一些条目是重复的。我想去掉一些重复的条目。在每种情况下,我只想保留最后一个值。重复该值的次数不需要固定,因此存在问题。有没有关于我该怎么做的想法


我目前正在使用这里的一些想法来提出一个解决方案,这将实现以下目的:

[~, I] = unique(A(:,2)),     
B = A(I,:);
细分:

  • unique
    命令将输出
    A
    第二列的唯一排序版本及其索引(
    I
  • 这些索引可用于从所需的
    A
    中提取行
请注意,unique确实保留了一组副本的最后一个元素,而不是第一个元素,因此它完全符合此处的要求。但是,对于我们这里的排序向量,find(diff(a(:,2))也可以满足这个目的。