2017-01-22 65 views
1

RDD SAMPLE如何在火花中工作?它的不同參數的功能是什麼,即樣本(有更換,分數,種子)。Spark中的RDD樣本

我找不到與'withReplacement'和'seed'參數有關的任何內容。請用一個例子來解釋。

+2

[Apache Spark(Scala)中的簡單隨機採樣和數據幀SAMPLE函數如何工作?](http://stackoverflow.com/questions/32229941/how-do-simple-random-sampling-and- dataframe-sample-function-work-in-apache-spark) – user7337271

回答

2

分數和種子很容易猜到 - 它們是你希望在你的樣本中看到的元素的一部分(即.5的樣本會給你一個包含一半元素的初始RDD的樣本)。種子是隨機數字生成器種子。這很重要,因爲您可能希望能夠爲測試硬編碼相同的種子,以便始終在測試中獲得相同的結果,但是在prod代碼中,將其替換爲當前時間(毫秒)或來自良好熵源的隨機數。

隨着替代抽樣是谷歌搜索,例如, https://www.ma.utexas.edu/users/parker/sampling/repl.htm。 簡而言之,如果您使用替換進行採樣,則可以在樣本中獲取相同的元素兩次,並且不帶替換您只能獲取一次。因此,如果你的RDD有[Bob,Alice和Carol],那麼你的「with replacement」樣本可以是[Alice,Alice],但沒有替換樣本不能有這樣的副本。

+0

感謝您的詳細解釋。 – SPram

+0

如果您完全回答您的問題,您通常會通過單擊左側的複選標記來接受答案。 –