检查矩阵是否有行是另一行的排列并只保留其中一个

check whether matrix has row that is permutation of another and keep only one of it

我有以下问题:

我有一个包含唯一行的 k*2 矩阵(之前应用了 unique() 命令),所以重要的部分是它有两列。

现在我只想保留不是另一行排列的行,

但如果有排列,我确实想保留两者之一!

背景:这个矩阵的每个元素都与另一个数据向量的一列相关联,我想取许多 2 个这样的向量的差异,并投影到结果(差异)向量上。 但是在 +/- 向量上的投影是相同的,所以对于这个应用程序来说这是一个副本。

示例:

     [,1] [,2]
[1,]    1    2
[2,]    3    4
[3,]    2    1

想要的结果:

     [,1] [,2]
[1,]    1    2
[2,]    3    4
  1. 创建矩阵的副本
  2. 对其每一行进行排序
  3. 使用 duplicated 函数查找非重复行的索引
  4. Select 这些行来自原始矩阵

或者如果顺序无关紧要,只需在步骤 2 之后 运行 unique