使用%in%function R,根据链接器ID从第二个数据集中存在的数据集中获取所有观察结果

时间:2016-01-06 18:53:55

标签: r

所以,说我有两个数据集:

for (int number : numbers) {
    if (CountQiftPositiv(number)) {
        System.out.println(number);
    }
}

现在,我想要一个新的数据集d1<- data.frame(seq(1:10),rnorm(10)) colnames(d1) <- c('id','x1') d2<- data.frame(seq(3:7),rnorm(5)) colnames(d2) <- c('id','x2') d3的数据d1的数据id也存在d2。我想使用一个非常简单的功能,例如:

d3 <- d1[id %in% d2$id]

除非这是为我打印错误。什么是简单的衬里才能实现这一目标?

1 个答案:

答案 0 :(得分:5)

我们可以使用

 subset(d1, id %in% d2$id)

或者

 d1[d1$id %in% d2$id,]

不确定这是否会简化,但data.table解决方案可能更有效。

 library(data.table)
 setDT(d1, key='id')[d2$id]