我将使用一个示例而不是我的数据。
所以,让我们说我们有一个字母矢量:
> LETTERS
[1] "A" "B" "C" "D" "E" "F" "G" "H" "I" "J" "K" "L" "M" "N" "O" "P" "Q" "R" "S" "T"
[21] "U" "V" "W" "X" "Y" "Z"
我创建了一个新的向量:
vec <- c("A", "D", "H", "Y", "GG")
我可以使用这样的函数来查看来自vec
的哪些字母属于LETTERS
而不是TRUE / FALSE。
> b <- vec %in% LETTERS
> b
[1] TRUE TRUE TRUE TRUE FALSE
是否有可能获得LETTERS
中找到的变量向量(在这种情况下是字母)?
所以输出应该是这样的:
>vec_of_variables
"A", "D", "H", "Y"
答案 0 :(得分:3)
您可能正在寻找的具体功能是intersect
:
> intersect(vec, LETTERS)
[1] "A" "D" "H" "Y"
答案 1 :(得分:2)
只需使用刚刚创建的逻辑值进行子集化。
vec_of_variables <- vec[vec %in% LETTERS]