gpt4 book ai didi

r - 比较两个矩阵之间的行

转载 作者:行者123 更新时间:2023-12-04 04:24:33 26 4
gpt4 key购买 nike

有没有一种快速的方法可以找到矩阵 A 中的哪些行出现在矩阵 B 中?
例如

m1 = matrix(c(1:6), ncol=2, byrow = T); m2 = matrix(c(1:4), ncol=2, byrow=T);

结果将是 1、2。

矩阵的行数不同(列数相同),而且它们有点大 - 从 10^6 - 10^7 行数。

据我所知,最快的方法是:
duplicated(rbind(m1, m2))

天啊!

最佳答案

该尺寸的快速方法应该是:

require(data.table)
M1 = setkey(data.table(m1))
M2 = setkey(data.table(m2))
na.omit(
M2[M1,which=TRUE]
)
[1] 1 2

关于r - 比较两个矩阵之间的行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9316946/

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