我正在寻找一种有效的方法来创建一个布尔向量,如果a number个指定变量(例如c(1,2,3))中的一个或多个位于另一个向量(例如c(4,5,6,1))中,则返回TRUE.

在本例中,由于元素1存在于两个向量中,因此寻求的输出将为TRUE.

据我所知,%in%只允许一次判断一个变量,考虑到我需要判断的潜在变量的数量,在这种情况下使用|运算符效率很低.使用intersect()返回logical(0)而不是FALSE,并且sum(c(1,2,3) == c(4,5,6,1)) > 1返回FALSE,因为公共元素不在同一位置.

推荐答案

另一个 Select :

vector1 <- c(1,2,3)
vector2 <- c(4,5,6,1)

any(Reduce(intersect, list(vector1, vector2)))

输出:

[1] TRUE

R相关问答推荐

MCMC和零事件二元逻辑回归

基于不同组的列的相关性

R Highcharts与两个位置关联的注释

任意列的欧几里得距离

从R导出全局环境中的所有sf(numrames)对象

使用较长的查询提取具有部分匹配的列表中的较短目标,

我正在努力用R计算数据集中的中值逐步距离

迭代到DataFrame列并获得成对的值列表(col1->;col2、col2->;col3、col3->;col4等)的正确方法.

try 将 colored颜色 编码添加到ggploly的标题中

根据列表中项目的名称合并数据框和列表

自定义gggraph,使geom_abline图层仅在沿x轴的特定范围内显示

从数据创建数字的命名列表.R中的框

使用R将简单的JSON解析为嵌套框架

在散点图中使用geom_point放置线图例

用满足特定列匹配的另一行替换NA行

当由base::限定时,`[.factor`引发NextMethod错误

R:使用ApexCharge更改标签在饼图中的位置

将y轴格式更改为R中的百分比

如果缺少时间,如何向日期-时间列添加时间

使用API密钥进行身份验证的Posit Connect上Plumber API中的RSTUDIO_USER_IDENTITY