【发布时间】:2023-08-29 10:39:01
【问题描述】:
我想延迟 R 中函数参数的评估。示例:
my_func <- function(FUN){print(FUN); print(FUN)}
my_func(runif(1))
#> [1] 0.2833882
#> [1] 0.2833882
由reprex package (v0.2.1) 于 2019 年 7 月 21 日创建
这是因为 runif(1) 只被评估一次并且它的结果被打印两次。
相反,我不希望在每个 print() 语句中之前评估 runif(1)。这将生成两个不同的随机数。
换句话说,我不希望 FUN “解决” --- 如果这是正确的词 --- 到 runif(1),直到我们在 print() 声明中。
【问题讨论】: