Possible Duplicate:
Standard way to remove multiple elements from a dataframe

我知道在R中,如果你在搜索另一个组的子集或基于id的匹配,你会使用

subset(df1, df1$id %in% idNums1)

我的问题是如何做相反的事情,或者 Select 与ID向量不匹配的项.

我try 使用!,但收到了错误消息

subset(df1, df1$id !%in% idNums1)

我想我的后援就是这样做:

matches <- subset(df1, df1$id %in% idNums1)
nonMatches <- df1[(-matches[,1]),]

但我希望有更有效的方法.

推荐答案

表达式df1$id %in% idNums1产生一个逻辑向量.要求反,需要求反整个向量:

!(df1$id %in% idNums1)

R相关问答推荐

如何在四进制仪表板值框中显示值(使用shiny 的服务器计算)

R形式的一维数字线/箱形图样式图表

R Markdown中的交叉引用表

以R中的正确顺序将日期时间字符列转换为posixct

如何计算R数据集中每个女性的子元素数量?

自动变更列表

计算时间段的ECDF(R)

R Select()可以测试不存在的子集列

线性模型斜率在减少原始数据时提供NA

在不丢失空值的情况下取消列出嵌套列表

如何在PDF格式的kableExtra表格中显示管道字符?

将全局环境变量的名称分配给列表中的所有元素

从数据创建数字的命名列表.R中的框

名字的模糊匹配

R try Catch in the loop-跳过缺少的值并创建一个DF,显示跳过的内容

排序R矩阵的行和列

R中的交叉表

如何在分组蜂群小区中正确定位标签

如何在基数R中根据矩阵散点图中的因子给数据上色?

使用循环改进功能( struct 简单)