RDD SAMPLE如何在spark中工作?它的不同参数的功能是什么,即样本(withReplacement,fraction,seed)。
我在网上找不到与'withReplacement'和'seed'参数相关的任何内容。请举例说明。
答案 0 :(得分:7)
分数和种子非常容易猜测 - 它们是您希望在样本中看到的元素的分数(即.5的样本将为您提供包含一半元素的初始RDD样本)。种子是随机数发生器种子。这很重要,因为您可能希望能够为测试硬编码相同的种子,以便在测试中始终获得相同的结果,但在prod代码中将其替换为当前时间(以毫秒为单位)或来自良好熵源的随机数
使用替换采样是google搜索,例如https://www.ma.utexas.edu/users/parker/sampling/repl.htm。 简而言之,如果您使用替换品进行采样,则可以在样品中获得相同的元素两次,而无需更换,您只能获得一次。因此,如果您的RDD有[Bob,Alice和Carol],那么您的"替换"样本可以是[爱丽丝,爱丽丝],但没有替换样本不能有这样的副本。