2011-11-01 109 views
6

在數據幀的行我有一個數據幀像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 

現在我想刪除其中列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 

任何人都可以幫助我嗎?非常感謝!

回答

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 
+0

謝謝MAX! – Lisann