无RDD的火花分层采样

时间:2018-09-25 12:18:46

标签: apache-spark rdd sampling

我要在数据帧上分层样本。但是在所有示例中,都涉及RDD,这需要花费大量时间来进行大量数据采样。下面是使用RDD的分层抽样示例。

//任何键值对的RDD [(K,V)]

val数据= sc.parallelize(Seq((1,'a'),(1,'b'),(2,'c'),(2,'d'),(2,'e' ),(3,'f')))

//指定每个键所需的确切分数 val分数= Map(1-> 0.1,2-> 0.6,3-> 0.3)

//从每个阶层获取一个近似样本

valroxSample = data.sampleByKey(withReplacement = false,分数=分数)

//从每个阶层获取确切的样本

val precisionSample = data.sampleByKeyExact(withReplacement = false,分数=分数)

是否可以在不将数据转换为RDD的情况下对数据帧进行分层采样?如果是的话???

0 个答案:

没有答案