矢量化之间:数据表 R



我很难理解data.table包文档中的"Vectorised between"示例V1.10.4

X = data.table(a=1:5, b=6:10, c=c(5:1))
> X
a  b c
1: 1  6 5
2: 2  7 4
3: 3  8 3
4: 4  9 2
5: 5 10 1
# NEW feature in v1.9.8, vectorised between
> X[c %between% list(a,b)]
a b c
1: 1 6 5
2: 2 7 4
3: 3 8 3
X[between(c, a, b)] # same as above

有人可以向我解释一下它是如何工作的吗? 为什么只选择了c5,4,3? 谢谢。

-----如评论中发布的那样----

在第4 行中,2不在49之间......between(c=2,a=4,b=9).

between使用>=<=(而不是><(。这就是为什么在第3 行中,它返回3(自其TRUE以来(

相关内容

  • 没有找到相关文章

最新更新