R 中的向量是否具有与集合数据类型相同的功能?
Do vectors in R have the same functionality as a set data type?
熟悉其他编程语言的人问我 R 是否有 set data type。 R 向量的元素已编号并具有顺序,因此在我看来,这将它们与 set 数据类型区分开来。但是,您可能对集合执行的任何操作都可以在 R 中执行。例如,append()
、子集(包括删除元素)、sample()
用于枚举,length()
确定大小,%in%
对应 "is an element of",您可以使用 intersect()
和 setdiff()
等方式轻松比较成员资格。
问题:
- R 有特定的集合数据类型吗?
- 向量能否执行与集合数据类型相同的功能?
我认为这不适用于其他站点,因为它显然是关于 R 语言和支持的数据类型的。不,没有集合 "data type",即 class 的行为类似于数学集合构造,尽管存在执行类似集合操作的函数:unique
、%in%
、setdiff
、intersect
、union
。 (可以说 Q 可以被认为是 OT b/c 它本质上是一个包推荐的请求。)有一个包实现了一个集合 class 并且它毫不奇怪地命名为:sets.
install.packages("sets")
library(sets)
help(pack=sets)
熟悉其他编程语言的人问我 R 是否有 set data type。 R 向量的元素已编号并具有顺序,因此在我看来,这将它们与 set 数据类型区分开来。但是,您可能对集合执行的任何操作都可以在 R 中执行。例如,append()
、子集(包括删除元素)、sample()
用于枚举,length()
确定大小,%in%
对应 "is an element of",您可以使用 intersect()
和 setdiff()
等方式轻松比较成员资格。
问题:
- R 有特定的集合数据类型吗?
- 向量能否执行与集合数据类型相同的功能?
我认为这不适用于其他站点,因为它显然是关于 R 语言和支持的数据类型的。不,没有集合 "data type",即 class 的行为类似于数学集合构造,尽管存在执行类似集合操作的函数:unique
、%in%
、setdiff
、intersect
、union
。 (可以说 Q 可以被认为是 OT b/c 它本质上是一个包推荐的请求。)有一个包实现了一个集合 class 并且它毫不奇怪地命名为:sets.
install.packages("sets")
library(sets)
help(pack=sets)