R:如何使replicate()和sapply()产生相同的结果?
我用R:如何使replicate()和sapply()产生相同的结果?,r,R,我用replicate() > set.seed(123) > z <- replicate(5, mean(rnorm(10)) 尽管帮助文件中有丰富的文档,但我无法生成一个能够集成产生z的五次重复的sapply代码。 事实上,我得到的最佳结果包括replicates()本身: set.seed(123) q <- sapply(replicate(5, rnorm(10)), mean) set.seed(123) 你想要:sapply(1:5,函数(x)均值(r
replicate()
> set.seed(123)
> z <- replicate(5, mean(rnorm(10))
尽管帮助
文件中有丰富的文档,但我无法生成一个能够集成产生z
的五次重复的sapply
代码。
事实上,我得到的最佳结果包括replicates()
本身:
set.seed(123)
q <- sapply(replicate(5, rnorm(10)), mean)
set.seed(123)
你想要:sapply(1:5,函数(x)均值(rnorm(10)))
在这种情况下,replicate
将是一个更好的选择apply(t(replicate(5,rnorm(10))),1,mean)
谢谢@Jeremycg,它很有效。如果我理解了你函数的含义,它相当于sapply(1:5,函数(x){mean(rnorm(10))}
。我可以问一下为什么replicate
在这里是一个更好的选择吗?你想:sapply(1:5,函数(x)平均值(rnorm(10))
在这种情况下,replicate
将是一个更好的选择apply(t)(replicate(5,rnorm(10)),1,mean)
谢谢@Jeremycg,它能工作。如果我理解了你函数的含义,它相当于sapply(1:5,函数(x){mean(rnorm(10))}
。请问为什么replicate
在这里是一个更好的选择?
set.seed(123)
q <- sapply(replicate(5, rnorm(10)), mean)