2014-10-31 45 views
-2

我有兩個數據集如下。如何使用匹配的觀察值來對數據進行子集分類?

ID  Var1 
    1  5 
    2  7 
    5  16 


    ID  V1 V2 
    1  1  5 
    1  11 55 
    1  55 12 
    2  124 58 
    2  58 99 
    3  7 6 
    3  44 88 
    4  2  6 
    4  4  99 
    5  8  11 
    5  58 12 

我想使下表只包含第一個表中的ID的子集。換句話說,我想從ID = 1,2,5的下表中選擇觀察值。
我的原始數據比發佈的要長得多。

回答

2

使用[

dat2.subset <- dat2[dat2$ID %in% dat1$ID, ] 

使用subset

dat2.subset <- subset(dat2, ID %in% dat1$ID) 

使用連接樣操作

merge(dat2, dat1, by = "ID") 
plyr::join(dat2, dat1, type = "inner") 
dplyr::inner_join(dat2, dat1) 
相關問題