iru*_*yts 7 environment r constants package
如何在R包内创建常量变量,其值不能改变?换句话说,我们如何在包环境中锁定对名称值?
示例:在我的包中,我在不同函数的循环中使用Normal分布的分位数,并且不想一直计算(或创建)它.
我试过k_q3 <- qnorm(1 - 0.01/2); lockBinding("k_q3", environment()),但它不起作用.
更新:上面的方法实际上是可行的.无法在包内部更改k_q3,也不能在外部更改k_q3.
最简单和最干净的方法是创建一个函数,例如
K_Q3 <- function() { qnorm(1 - 0.01/2) }
Run Code Online (Sandbox Code Playgroud)
请注意,在 R 中调用函数具有不可忽略的开销。您应该避免在循环中调用它,或者之前将其复制到局部变量。
| 归档时间: |
|
| 查看次数: |
824 次 |
| 最近记录: |