如何根据另一个较短的向量删除数据框中的行?

时间:2014-09-08 05:23:59

标签: r vector compare matching

我有一个数据框data,其中包含一列item_code,表示此行中的观察结果属于哪个项目。对于相同的产品,有几个观察/行。此外,我有一个向量item,其中保存了一些项目代码。我需要删除数据框中的行,这些行是item中的一个项目。数据框的行数多于向量。

我想我可能不得不使用%in%运算符,但我无法使用它,我尝试了

d2 <- data[which(item %in% item_code$data), ]

但是我的数据框d2只有item向量的长度。

1 个答案:

答案 0 :(得分:0)

恰恰相反。否定索引或布尔值

d2 <- data[-which(item %in% item_code$data), ]

d2 <- data[ ! item %in% item_code$data, ]

它们处理NA值的方式不同但你真的没有提供样本输入和所需的输出,因此不清楚在这些情况下你会期望什么