SPARK是对dataframe统一采样的采样方法



我想从数据框中随机选择行数,我知道样本方法可以做到这一点,但我担心我的随机性应该是均匀抽样吗?所以,我想知道Spark对Dataframes的样例方法是否统一?

谢谢

这里有几个代码路径:

  • 如果withReplacement = false && fraction > .4,那么它使用一个增强的随机数生成器(rng.nextDouble() <= fraction),并让它完成工作。这看起来会很统一
  • 如果withReplacement = false && fraction <= .4,那么它使用更复杂的算法(GapSamplingIterator),看起来也很均匀。乍一看,看起来应该是统一的
  • 如果withReplacement = true,它几乎是相同的事情,除了它可以复制它的外观,所以在我看来,它不会像前两个一样均匀

是的,它是统一的,更多信息可以尝试下面的代码。我希望这能澄清。

我认为这应该做的伎俩,其中"数据"是你的数据帧。val split = data.randomSplit(Array(0.7, 0.3))val (trainingData, testData) = (split (0), split (1))

相关内容

  • 没有找到相关文章

最新更新