def sample( withReplacement: Boolean, fraction: Double, seed: Long = Utils.random.nextLong): RDD[T] = { require(fraction >= 0, s"Fraction must be nonnegative, but got ${fraction}")
輸入參數:withReplacement、fraction,seed
返回: 數組集組成的RDD
withReplacement:表示抽出樣本后是否在放回去,true表示會放回去,這也就意味着抽出的樣本可能有重復
fraction :抽出多少,這是一個double類型的參數,0-1之間,eg:0.3表示抽出30%
seed:表示一個種子,根據這個seed隨機抽取,一般情況下只用前兩個參數就可以,那么這個參數是干嘛的呢,這個參數一般用於調試,有時候不知道是程序出問題還是數據出了問題,就可以將這個參數設置為定值
有放回取樣0.001%
data.sample(true,0.00001).collect().foreach(println)