這個是我自己試的例子 。
val a = sc.parallelize( 1 to 20 , 3 )
val b = a.sample( true , 0.8 , 0 )
val c = a.sample( false , 0.8 , 0 )
println( "RDD a : " + a.collect().mkString( " , " ) )
println( "RDD b : " + b.collect().mkString( " , " ) )
println( "RDD c : " + c.collect().mkString( " , " ) )
RDD a : 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 10 , 11 , 12 , 13 , 14 , 15 , 16 , 17 , 18 , 19 , 20
RDD b : 1 , 2 , 2 , 3 , 3 , 4 , 4 , 6 , 7 , 9 , 9 , 10 , 12 , 14 , 14 , 15 , 16 , 17 , 17 , 17 , 18 , 18 , 18
RDD c : 1 , 2 , 4 , 5 , 8 , 10 , 12 , 13 , 14 , 15 , 16 , 17 , 18 , 19 , 20
我能得到的結論的只有 , withReplacement 為 true 的時候 ,回傳的子集會有重復 , 為false , 回傳的子集不會有重復
并且兩者得到的子集大小( 去重的話 ) 都是 20 * 0.8 左右
不過這些都是我自己觀察到的 ,我想知道這個引數到底是什么用的 ?
uj5u.com熱心網友回復:
sample就是抽樣的意思,withReplacement是指是否有放回的抽樣為true為放回,為false為不放回
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/98720.html
標籤:Spark
上一篇:求sharepoint server 2013 下載資源
下一篇:云服務器后期可以升級嗎?
