【发布时间】:2015-10-16 11:01:45
【问题描述】:
我想从数据框中随机选择一定数量的行,我知道 sample 方法可以做到这一点,但我担心我的随机性应该是统一抽样?所以,我想知道 Spark on Dataframes 的示例方法是否统一?
谢谢
【问题讨论】:
标签: apache-spark sample spark-dataframe
我想从数据框中随机选择一定数量的行,我知道 sample 方法可以做到这一点,但我担心我的随机性应该是统一抽样?所以,我想知道 Spark on Dataframes 的示例方法是否统一?
谢谢
【问题讨论】:
标签: apache-spark sample spark-dataframe
是的,它是统一的,有关更多信息,您可以尝试下面的代码。 我希望这可以澄清。
我认为这应该可以解决问题,其中“数据”是您的数据框。 val splits = data.randomSplit(Array(0.7, 0.3)) val (trainingData, testData) = (splits(0), splits(1))
【讨论】:
这里有几个代码路径:
withReplacement = false && fraction > .4,那么它会使用增强的随机数生成器 (rng.nextDouble() <= fraction) 并让它完成工作。 这看起来会很统一。
withReplacement = false && fraction <= .4 则它使用更复杂的算法(GapSamplingIterator),看起来也很统一。一眼看去,应该也是统一的
withReplacement = true 与except it can duplicate by the looks of it 类似,所以在我看来,它不像前两个那样统一
【讨论】: