1. ホーム
  2. r

[解決済み] Rの%in%の否定[重複]について

2022-02-05 22:47:51

質問

の短い否定はありますか? %in% のようにRで !%in% または %!in% ?


もちろん、ネガキャンはできます c("A", "B") %in% c("B", "C") によって !(c("A", "B") %in% c("B", "C")) (cf. この質問 しかし、私はもっとストレートなアプローチを好みますし、2つの括弧を省きます(おそらくほとんどの人は c("A", "B") != c("B", "C") オーバー !(c("A", "B") == c("B", "C")) ).

解決方法は?

いいえ、そのような機能は組み込まれていませんが、次のように自分で簡単にコーディングすることができます。

`%nin%` = Negate(`%in%`)

または

`%!in%` = Negate(`%in%`)


このスレッドとフォローアップの議論を参照してください。 in% 演算子 - NOT IN


また、ご指摘のあったパッケージ Hmisc には、演算子 %nin% ということで、もしあなたがアプリケーションに使っているならば、それはすでにあるものです。

library(Hmisc)
"A" %nin% "B"
#[1] TRUE
"A" %nin% "A"
#FALSE