%in% の反対: ベクトルで指定された値を持つ行を除外する 質問する

%in% の反対: ベクトルで指定された値を持つ行を除外する 質問する

データフレームD1のカテゴリ変数V1は、AからZまでの文字で表される値を持つことができます。B、N、Tなどの一部の値を除外したサブセットD2を作成したいと考えています。基本的に、私は次の逆のコマンドが必要です。%in%

D2 = subset(D1, V1 %in% c("B", "N", "T"))

ベストアンサー1

演算子を使用すると、基本的にすべての TRUE を FALSE にし、すべての FALSE を TRUE にすることができます!。つまり、

D2 = subset(D1, !(V1 %in% c('B','N','T')))

編集: 自分でオペレーターを作成することもできます:

'%!in%' <- function(x,y)!('%in%'(x,y))

c(1,3,11)%!in%1:10
[1] FALSE FALSE  TRUE

おすすめ記事