On 12-05-22 12:22 PM, Yihui Xie wrote:
Hi,
The problem arises when I lazyLoad() the .Random.seed from a
previously saved database. To simplify the process of reproducing the
problem, see the example below:
## this assignment may not really make sense, but illustrates the problem
delayedAssign('.Random.seed', 1L)
typeof(.Random.seed)
# [1] "integer"
rnorm(1)
# Error in rnorm(1) :
# .Random.seed is not an integer vector but of type 'promise'
typeof(.Random.seed)
# [1] "integer"
So there must be an "attribute" "promise" somewhere attached to
.Random.seed, and I cannot find it. The R function typeof() does not
reveal it, but the TYPEOF() function in src/main/RNG.c says it is a
'promise'.
You can remove it by a simple assignment:
.Random.seed <- .Random.seed
will do it. (The reason is that it doesn't copy the object blindly, it
evaluates the RHS to get 1L, and it's a regular assignment, so that gets
put into the LHS.)
Duncan Murdoch
My question is, how to make R use the real value of .Random.seed
instead of complaining about the promise? Thanks!
Regards,
Yihui
--
Yihui Xie<xieyi...@gmail.com>
Phone: 515-294-2465 Web: http://yihui.name
Department of Statistics, Iowa State University
2215 Snedecor Hall, Ames, IA
______________________________________________
R-help@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.
______________________________________________
R-help@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.