根据三列删除数据框中的行

Lis*_*ann 6 row r unique dataframe

我有一个像z这样的数据框:

z <- matrix(c(1,0,0,1,1,0,0, 
      1,0,0,0,1,0,0, 
      0,0,0,0,0,0,0, 
      0,0,1,0,0,0,0), 
    nrow=7, 
    dimnames=list(LETTERS[1:7],NULL)) 

   [,1] [,2] [,3] [,4]
A    1    1    0    0
B    0    0    0    0
C    0    0    0    1
D    1    0    0    0
E    1    1    0    0
F    0    0    0    0
G    0    0    0    0
Run Code Online (Sandbox Code Playgroud)

现在我想删除第1,2列和第3列的值相同的重复行.

  • 删除E行因为它与A相同.
  • 删除行C,F和G,因为它们与B相同.

结果应该是这样的:

   [,1] [,2] [,3] [,4]
A    1    1    0    0
B    0    0    0    0
D    1    0    0    0
Run Code Online (Sandbox Code Playgroud)

任何人都可以帮我这个吗?非常感谢!

Max*_*Max 7

> z[rownames(unique(z[,-4])),]
  [,1] [,2] [,3] [,4]
  A    1    1    0    0
  B    0    0    0    0
  D    1    0    0    0
Run Code Online (Sandbox Code Playgroud)