gpt4 book ai didi

r - 如何以更优雅的方式满足 data.table 的多条件?

转载 作者:行者123 更新时间:2023-12-01 10:18:59 25 4
gpt4 key购买 nike

这是包含 2 个字符变量的玩具示例。我有另一个两个字符的向量。一个一个比较,我可以得到结果,但是有没有更优雅的方式呢?

set.seed(100)
DT <- data.table(V1 = LETTERS[sample(1:5, 10, replace = T)],
V2 = LETTERS[sample(3:7, 10, replace = T)])
V1V2 = c("B", "G")
DT[V1 %in% V1V2[1] & V2 %in% V1V2[2]]
# V1 V2
# 1: B G

由于我们可以通过DT[apply(DT[,.(V1, V2)], 1, print)]通过apply直接获取行元素是一种在 i 中描述多条件表达式的方法。

我期待这样的事情:

DT[.(V1, V2) %in% V1V2]

但这似乎不起作用。

感谢您的建议。

最佳答案

另一种选择是使用 的连接功能:

setkey(DT, V1, V2)
DT[as.list(V1V2)]

或:

DT[as.list(V1V2), on = .(V1, V2)]

关于r - 如何以更优雅的方式满足 data.table 的多条件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57448730/

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