2014-07-24 97 views
-2

我有一個數據幀,看起來像這樣:子集在R,並如果循環

ID   Team 
11   1 
22   2 
45   4 
45   2 
79   3 
79   4 
100   2 
123   1 
167   3 
167   1 

我不得不子集僅是重複的,直到達到數據幀的末端的那些行。如何做呢?

+1

因此,由被複制的「行」,你僅僅意味着重複的ID行?這裏的「正確」子集應該是3-6行和9-10行? – MrFlick

回答

2

如果你的意思是子集有重複ID小號

dat <- structure(list(ID = c(11L, 22L, 45L, 45L, 79L, 79L, 100L, 123L, 
167L, 167L), Team = c(1L, 2L, 4L, 2L, 3L, 4L, 2L, 1L, 3L, 1L)), .Names = c("ID", 
"Team"), class = "data.frame", row.names = c(NA, -10L)) 

dat[duplicated(dat$ID)|duplicated(dat$ID,fromLast=T),] 
#  ID Team 
# 3 45 4 
# 4 45 2 
# 5 79 3 
# 6 79 4 
# 9 167 3 
# 10 167 1 
+0

我得到的數據幀是空的我必須打印重複行 – user3867198

+0

@ user3867198的副本請檢查你是否仍然獲得空數據幀通過複製上面的代碼 – akrun

+0

是的,我必須重複行ID與重複 – user3867198