gpt4 book ai didi

r - 具有多个元素的向量的公共(public)元素

转载 作者:行者123 更新时间:2023-12-02 20:46:01 24 4
gpt4 key购买 nike

如何高效地找到两个具有重复元素的向量的公共(public)元素?

示例:

v1 <- c(1, 1, 2, 3, 3, 4)  
v2 <- c(1, 1, 1, 3, 4, 5)
commonElements <- c(1, 1, 3, 4)

intersect 不能很好地处理重复元素。

最佳答案

我喜欢相交表格,所以...

tv1 <- table(v1)
tv2 <- table(v2)
comvals <- intersect(names(tv1),names(tv2))
comtab <- apply(rbind(tv1[comvals],tv2[comvals]),2,min)

信息仍然存在,但采用(我认为的)更好的格式:

> comtab
1 3 4
2 1 1

编辑:如果您确实想要该向量,则为:as.numeric(rep(names(comtab),comtab))

关于r - 具有多个元素的向量的公共(public)元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16388405/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com