gpt4 book ai didi

R:如果加载了插入符号包,则 set.seed() 结果不匹配

转载 作者:行者123 更新时间:2023-12-04 15:31:56 24 4
gpt4 key购买 nike

我正在使用 createFolds()在 R(版本:3.3.0)中创建训练/测试分区。为了使结果可重现,我使用了 set.seed()种子值为 10。正如预期的那样,结果(生成的折叠)是可重现的。

但是一旦我在设置种子后加载了插入符号包。然后使用createFolds函数,发现创建的折叠不一样(虽然还是可以重现的)。

具体而言,创建的折叠在以下两种情况下有所不同:

情况1:

library(caret)
set.seed(10)
folds=createFolds(y,k=5,returnTrain=TRUE)

案例2:
set.seed(10)
library(caret)
folds=createFolds(y,k=5,returnTrain=TRUE)

哪里 y是一个向量。

为什么会发生这种情况?

最佳答案

罪魁祸首是 ggplot2,它是在您加载插入符号时附加的。它定义了一个 .onAttach功能:https://github.com/hadley/ggplot2/blob/master/R/zzz.r

这个函数在包被附加时调用,见help("ns-hooks") .并在其中 runif被调用从而推进 RNG 的状态。

关于R:如果加载了插入符号包,则 set.seed() 结果不匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38465460/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com