次の2つの数値ベクトルがあります。
A <- c(1, 3, 5, 7, 9)
B <- c(2, 3, 4, 5, 6, 10, 12, 13)
私は、新しいベクトルを生成したいC
の両方に存在している値が含まれているA
とB
(これらの値が検出された時ではない位置)。結果は次のようになります。
C <- c(3, 5)
私はまた、ベクター生成するD
中に存在する値含むA
が、中には存在しないB
と、ベクターE
内に存在価値含まB
なくしますA
。
D <- c(1, 7, 9)
E <- c(2, 4, 6, 10, 12, 13)
ベースRを使用してこれを行うための最良の方法は何ですか?ありがとう!
ベースR関数を使用できますintersect()
。
また、一般的にはC
、に非常に近いためc()
、変数名としては使用しません。問題が発生する可能性があります。
A <- c(1, 3, 5, 7, 9)
B <- c(2, 3, 4, 5, 6, 10, 12, 13)
Inter <- intersect(A, B)
[1] 3 5
`intersect() 'の反対の場合:
#taken from here:https://www.r-bloggers.com/outersect-the-opposite-of-rs-intersect-function/
outersect <- function(x, y) {
sort(c(setdiff(x, y),
setdiff(y, x)))
}
outersect(A, B)
[1] 1 2 4 6 7 9 10 12 13
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加