5
Rにno-op関数があるので、パラメータの値が高価であってもすぐに戻ります。私はstopifnot
関数の条件付き置換を探しています。stopifnot()の条件付き置換としてのNo-op関数
> noop(runif(1e20))
# returns immediately and uses no memory
Rにno-op関数があるので、パラメータの値が高価であってもすぐに戻ります。私はstopifnot
関数の条件付き置換を探しています。stopifnot()の条件付き置換としてのNo-op関数
> noop(runif(1e20))
# returns immediately and uses no memory
私は、これはと思う:
R> system.time(replicate(1e4, noop(runif(1e2))))
user system elapsed
0.01 0.00 0.01
R> system.time(replicate(1e4, noop(runif(1e5))))
user system elapsed
0.01 0.00 0.02
R> system.time(replicate(1e4, noop(runif(1e8))))
user system elapsed
0.01 0.00 0.01
R> system.time(replicate(1e4, noop(runif(1e11))))
user system elapsed
0.01 0.00 0.01
R>
ので、我々は何のランタイムの増加が見られないことができるN増やす場合でも:
noop <- function(...) invisible(NULL)
として遅延評価は、ここでは救助に来ます。
ありがとうございます。このようなものは、ベースやパッケージにあらかじめ定義されていますか? – krlmlr
私が知っているわけではありませんので、あなたの〜/ .RprofileまたはRprofile.siteに1行追加してください。 –