假设我有一个pandas
数据帧,并且将sklearn.model_selection.train_test_split
参数设置为1的情况下应用了random_seed
。
假设我然后使用完全相同的pandas
数据帧并创建一个SQLContext
实例的Spark数据帧。如果在将randomSplit
参数设置为1的情况下应用PySpark seed
函数,是否总是可以确保获得完全相同的分割?
答案 0 :(得分:1)
一般来说,不是。
大多数“随机”数字生成器实际上都是函数,它们接受一些输入值并生成一个很长的字节流,可以将其转换为其他类型的值。 “随机性”来自这样一个事实,即仅给定此流中的值(即使您想要的数量),则很难预测下一个值或提取原始输入值。
此输入值就是我们所说的“种子”。
结果是否相同,不仅取决于种子,还取决于sklearn
和pyspark
是否使用完全相同随机数生成器实现,操作系统它们在处理器架构上运行...