如何将所有状态名称组合在一个向量中,而不是单独列出所有逻辑排除项?我在 CRAN 网站上找到了函数 %notin%,但 R 不认为是合法函数。
indata <- indata[which(indata$STATE != "GU" & indata$STATE != "WY" &
indata$STATE != "KS" & indata$STATE != "ME" &
indata$STATE != "MT" & indata$STATE != "ND" &), ]
谢谢。
最佳答案
indata[!indata$STATE %in% c("GU", "WY", "KS", "ME", "MT", "ND"), ]
编辑:@CarlWitthoft,信不信由你,我实际上已经在私有(private)包中拥有以下内容一段时间了
`%notin%` <- function (x, table) x[!x %in% table]
然而,我从来没有想过要使用它,直到我已经把它打出来很长一段时间。另外,使用它会使我的代码不易分发。我不知道
operators:::`%!in%`
这只是
%notin%
的后半部分关于r - 如何使用多个排除对数据集进行子集化?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10557310/