【问题标题】:How to check if set A is subset of set B in R? [duplicate]如何检查集合A是否是R中集合B的子集? [复制]
【发布时间】:2016-06-06 11:58:13
【问题描述】:

我有两个集合 A 和 B。我想检查集合 A 是否是集合 B 的子集。我尝试过我知道 R 中的集合操作。我尝试过 intersect、union、setdiff。然而,他们都没有帮助。例如,

A = c(1, 2, 3, 4)

B = c(1, 2, 3, 4, 5)

我正在寻找一个返回 TRUE 或 FALSE 的函数。 我使用了A %in% B 并比较了总和和长度,它们的作用相同。但我觉得有更好的方法来做到这一点。

length(A %in% B) == sum(A %in% B) 返回TRUElength(B %in% A) == sum(B %in% A) 返回FALSE

【问题讨论】:

  • 我找不到上一个问题。感谢您的参考!

标签: r set subset


【解决方案1】:

我们可以使用all%in%

all(A %in% B)
#[1] TRUE

all(B %in% A)
#[1] FALSE

【讨论】:

    【解决方案2】:

    另一种方法,检查A 是否是B 的子集

    setequal(intersect(A,B), A)
    # [1] TRUE
    

    检查B 是否是A 的子集

    setequal(intersect(A,B), B)
    # [1] FALSE
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-04-05
      • 2022-01-04
      • 2013-04-20
      • 2012-03-10
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多