rav*_*per 3 equality r vector intersect
我正在寻找一种有效的方法来创建一个布尔向量,TRUE如果多个指定变量(例如)中的一个或多个c(1,2,3)在另一个向量(例如)中,则该布尔向量返回c(4,5,6,1)。
在此示例中,所寻求的输出将是TRUE当元素1出现在两个向量中时。
据我所知,%in%一次只允许检查一个变量,并且|在这种情况下,考虑到我需要检查的潜在变量的数量,使用运算符的效率很低。使用intersect()returnlogical(0)而不是FALSE, 和sum(c(1,2,3) == c(4,5,6,1)) > 1returnsFALSE因为公共元素不在同一位置。
您可以使用any:
vec <- c(1,2,3)
vec2 <- c(4,5,6,1)
any(vec %in% vec2)
#[1] TRUE
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
707 次 |
| 最近记录: |