data.table
バージョン 1.8.8では%between%
、次のように定義されています。
> `%between%`
function (x, y)
between(x, y[1], y[2], incbounds = TRUE)
<bytecode: 0x0000000050912810>
<environment: namespace:data.table>
この小さな変更で、この関数はベクトル化されると思いました。
function (x, y)
between(x, y[[1]], y[[2]], incbounds = TRUE)
お気に入りbetween
s <- c(2, 5)
d <- c(7, 9)
> between(3, s, d)
[1] TRUE FALSE
このアイデアは、2 つのベクトルを含むリストを使用することから生まれました。
`between2%` <- function(x, lst) between(x, lst[[1]], lst[[2]], incbounds = TRUE)
> 3%between%c(s,d)
[1] TRUE
> 3%between2%list(s,d)
[1] TRUE FALSE
私の質問は次のとおりです。置き換えた場合、パッケージ%between%
内の機能は影響を受けますか? data.table
私はそうすべきではないと思います.[[
アトミックベクトルで動作するはず[
です. 私は正しいですか?ありがとう
> 3%between2%c(1,5)
[1] TRUE