向量化:数据表 R
Posted
技术标签:
【中文标题】向量化:数据表 R【英文标题】:Vectorised between: datatable R 【发布时间】:2017-07-14 15:20:13 【问题描述】:我很难理解data.table
包文档V1.10.4
中的“Vectorised between
”示例?
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
有人可以向我解释一下它是如何工作的吗?为什么只选择了c
中的5,4,3
?谢谢。
【问题讨论】:
在第 4 行中,2
不在 4
和 9
....between(c=2,a=4,b=9)
之间。 between
使用 >=
和 <=
(而不是 >
和 <
)。这就是为什么在3
行中,它返回3
(因为它是TRUE
)
@ChiPak 非常感谢,现在非常清楚! :)
@ChiPak 可能想把它变成一个答案:)
【参考方案1】:
-----在 cmets 中发布----
在第 4 行,2
不在4
和9
....between(c=2,a=4,b=9)
之间。
between
使用>=
和<=
(而不是>
和<
)。这就是为什么在 第 3 行,它返回 3
(因为它是 TRUE
)
【讨论】:
以上是关于向量化:数据表 R的主要内容,如果未能解决你的问题,请参考以下文章