即使在R中使用set.seed()也有不同的结果

时间:2018-12-13 06:14:59

标签: r random-seed user-defined r6

我已经用相同的种子重新运行,但是在R studio中无法产生相同的结果。

调用不同的用户程序包,R6类和方法时,set.seed()会丢失轨迹吗?

您是否遇到过类似情况以及如何解决?

非常感谢

closeAllConnections()
rm(list=ls())
gc()

set.seed(123456)
require(PackageA)  #user defined package

fileName <- "N:/Risk Management/abc.json";

configuration <- JsonConfigurationReader$readConfiguration(fileName); #R6 class and method in PackageA

instance <- someClass$new(configuration); #R6 class and method in PackageA

instance$execute()  #will produce some random numbers in this method

closeAllConnections()
rm(list=ls())
gc()

1 个答案:

答案 0 :(得分:1)

如果您使用的是其他R版本(3.5 vs 3.6及更高版本),则会出现问题。 高达3.5版的版本将显示相同的结果,但是对于相同的代码,3.6版的版本将显示不同的结果。 但是,版本3.6和4.0将具有相同的结果。