2013-08-19 94 views
0

我有一個數據集,有重複的觀察,如何保持獨特的觀察?刪除R中的重複行?

ID Date Type 
1 201301 A 
2 201308 B 
4 201303 R 
1 201301 A 
3 201305 C 
2 201308 B 

我要的是:

ID Date Type 
1 201301 A 
2 201308 B 
4 201303 R 
3 201305 C 

我嘗試了獨特&複製功能。但它沒有奏效。

dataset[which(dataset$ID %in% unique(dataset$ID)),] # will keep all the row 

dataset[!duplicated(dataset$ID),] #will only keep the ID=3,4,as follows 
ID Date Type 
4 201303 R 
3 201305 C 

如何獲取R中的目標數據集?

+1

當我用你的數據集嘗試你的第二個代碼('dataset [!duplicated(dataset $ ID),]')時,它確實輸出你的目標數據集,而不僅僅是一個只有ID 3和4的數據集...... – plannapus

+0

是的,你是對的!它在示例數據中工作!那麼爲什麼在我的真實數據集中,「重複」功能將刪除所有具有兩個或更多條目的記錄。讓我再次檢查,謝謝!有沒有其他功能可以保留一個條目,而另一個功能會被刪除? – Sunny

+0

我很抱歉,我犯了一個錯誤。 代碼(數據集[!重複(數據集$ ID),])可以輸出我的目標數據集! – Sunny

回答

2

要麼

unique(dataset) 

dataset[!duplicated(dataset),] 

會工作。

(將評論中的答案複製到正確的答案中)。