非重复数字

时间:2013-07-16 19:13:39

标签: matlab unique

我正在使用混沌函数在matlab中创建一个随机数矩阵(2d)并将这些数字用于索引。我希望这两个数字的组合不重复。

a=[25,45;  25,30;  30,45;  25,45]

预期结果:

b=[25,45;25,30;30,45]

我怎么能用MATLAB做到这一点?

1 个答案:

答案 0 :(得分:2)

unique命令与'rows'参数

一起使用
b = unique( a, 'rows' )

编辑保留唯一行的顺序

如评论中所述,结果b应保持与a中相同的唯一行顺序。
怎么做?

  • 对于最近的版本,这不是问题,只需使用'stable'参数

    即可
    >> b = unique( a, 'rows', 'stable' );
    
  • 旧版本有点棘手。

    >> [ignore, ia, ib] = unique( a, 'rows', 'first' );
    >> b = a( sort(ia), : )