我在用createFolds()
在 R(版本:3.3.0)中创建训练/测试分区。为了使结果可重复,我使用了set.seed()
种子值为 10。正如预期的那样,结果(生成的折叠)是可重复的。
但是一旦我在设置种子后加载插入符号包。然后使用createFolds函数,我发现创建的折叠是不同的(尽管仍然可以重现)。
具体来说,创建的折叠在以下两种情况下有所不同:
情况1:
library(caret)
set.seed(10)
folds=createFolds(y,k=5,returnTrain=TRUE)
Case 2:
set.seed(10)
library(caret)
folds=createFolds(y,k=5,returnTrain=TRUE)
where y
是一个向量。
为什么会发生这种情况?
罪魁祸首是 ggplot2,它是在加载插入符时附加的。它定义了一个.onAttach
功能:https://github.com/hadley/ggplot2/blob/master/R/zzz.r https://github.com/hadley/ggplot2/blob/master/R/zzz.r
当附加包时调用此函数,请参阅help("ns-hooks")
。并在其中runif
从而提升 RNG 的状态。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)