如何使用匹配的观察对数据进行子集化?

时间:2014-10-31 19:56:58

标签: r select dataset subset

我有两个数据集如下。

   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的观察结果 我的原始数据比发布的数据长得多。

1 个答案:

答案 0 :(得分: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)