これはおそらく非常に基本的な R の質問です...そして、尋ねるのは少し悪い気がします...しかし、次の論理関数を実行する==
or |
or !
or etc のようなコードは少しありますか?&
もしも
x
== ベクトルに含まれる要素の値のいずれかy
次にTRUE
そうしないと
間違い
これはおそらく非常に基本的な R の質問です...そして、尋ねるのは少し悪い気がします...しかし、次の論理関数を実行する==
or |
or !
or etc のようなコードは少しありますか?&
もしも
x
== ベクトルに含まれる要素の値のいずれかy
次にTRUE
そうしないと
間違い
実際、あなたが言ったことにかなり近いです。
any(x == y)
x と y の長さが互いに倍数でない場合は警告がスローされますが、これは x と y の任意の長さで機能します。x と y が同じ長さであることが最適です。ただし、x が 1 つのアイテムであるという限られたケースでは、
x %in% y
も機能します。また、y と同じ長さではないが 1 項目より長い x がある場合は、おそらく次の方法が最も賢明です。
any(x %in% y)
あなたが試すことができます
x %in% y
ここy
で、はベクトルです。
もう 1 つの解決策は、x がベクトルで y がベクトルであり、両方のベクトルにあるすべての値を表示したい場合に intersect 関数を使用することです。これは、x または y がスカラーの場合にも機能します。
# Sample Data
x <- 1:40
y <- 35:100
# We know that 35, 36, 37, 38, 39, 40 are in both vectors
intersect(x, y)
[1] 35 36 37 38 39 40
あなたが解決しようとしている正確な問題はわかりませんが、どの値が y にあるかを知る必要があると仮定すると、これは役立つかもしれません。
x %in% y を使用して取得するブール値ベクトルを表示せずに TRUE/FALSE の回答が必要な場合は、次のように使用できます。
length(intersect(x, y)) > 0
[1] TRUE