【发布时间】:2015-06-12 14:03:34
【问题描述】:
我试图理解为什么以下 2 个代码 sn-ps 会导致不同的输出,我希望有人能启发我。第二个版本稍微快一点 - 这是我的动机,因为这一切都在一个循环中,但我需要知道它是否等效,如果不是那么为什么?
things <- 100000
n.events <- 3
probs <- rep(0.05, n.events)
# Method 1
set.seed(1)
events1 <- matrix(n.events, nrow=things)
events1 <- sapply(probs, function(probs) rbinom(things,1,probs))
# Method 2
set.seed(1)
events2 <- matrix( rbinom(things*n.events, 1, probs), ncol=n.events, byrow=TRUE)
> identical(events1, events2)
[1] FALSE
【问题讨论】:
-
set.seed(1); events2 <- matrix( rbinom(things*n.events, 1, probs), ncol=n.events, byrow=FALSE); identical(events1, events2) # TRUE........ -
@CathG,作为答案发布(有更多解释)?
-
哦,我太笨了。太棒了,谢谢。
-
np。遵循@BenBolker 的建议,如果您认为值得,我将其发布为答案?
-
请去吧