2013-02-04 19 views
6

我試圖使用Spark中的takeSample()函數,參數是 - 數據,要採樣的數量和種子。但我不想使用種子。我想每次都有不同的答案。我無法弄清楚我該怎麼做。我嘗試使用System.nanoTime作爲種子值,但它給出了一個錯誤,因爲我認爲數據類型不匹配。是否還有其他與takeSample()類似的功能可以在沒有種子的情況下使用?或者是否有其他的實現可以與takeSample()一起使用,以便每次都得到不同的輸出。Spark中的takeSample()函數

回答

7

System.nanoTime類型爲longtakeSample預期的種子爲Int類型。因此,takeSample(..., System.nanoTime.toInt)應該工作。

+1

在scala中'.toInt'應該優先於'.intValue' –

+0

@RégisJean-Gilles謝謝,更正。 –

1

System.nanoTime返回Long,而takeSample需要一個Int。
您可以將scala.util.Random.nextInt作爲種子值提供給takeSample函數。