RAND 函式

RAND 函式會產生 0 和 1 之間的隨機實數。此函式接受一個選擇性的整數參數,該參數讓每次執行工作時產生相同的一組隨機數。
  • 該函式產生小數類型的值,且精確度到小數點後 15 位數。如果想要檢視產生的值的所有數字,可能需要套用不同的數字格式。請參閱 NUMFORMAT 函式
  • 每當瀏覽器重新整理,以及後續執行工作時,瀏覽器內會產生新的隨機數。

您可以選擇插入一個整數做為參數。

  • 當該值存在時,此種子值將使用為隨機數產生器的一部分,使其輸出是一組偽隨機值,該組值在不同的工作執行之間是一致的。
  • 瀏覽器重新整理時,若種子值存在,隨機數將保持一致。

基本用法

derive type:single value: RAND() as:'random'

輸出:對於每一資料列,在新的 random 函式中產生一個 0 到 1 之間的隨機數。

語法

此函式沒有任何引數。

範例

範例 - 隨機值

在以下範例中,random 資料欄係由 RAND 函式產生:

derive type:single value:RAND() as:'random'

sourcerandom
A

0.516845703365675

B

0.71118736300207

C

0.758686066027118

D

0.640146255791255

範例 - 類型檢查函式

RAND 函式通常是用來在您的資料中引進某種程度的隨機性。在下列範例中,會使用此函式在較大型的資料集內執行取樣。

提示:提醒您,對於大型資料集,此應用程式只會顯示其樣本。在工作執行期間,此隨機化方法將套用於整個資料集。


來源:

您想要從一組排序中擷取 20% 的隨機樣本,並用於進一步研究:

OrderIdQtyProdId
100130小工具
100210大型小工具
10035大型小工具
100440小工具
100580極小型工具
100620小工具
1007100極小型工具

轉換:

您可以使用下列轉換來產生從 1 到 10 的隨機整數:

derive type:single value:round(RAND() * 10) as:'random'

現在可以使用下列轉換,保留前 20% 只包含隨機值的資料列,其中值為 910

keep row:(random > 8)

結果:

注意:由於結果為隨機選取,因此結果可能不盡相同。

OrderIdQtyProdIdrandom
100580極小型工具9
1007100極小型工具10

本頁內容對您是否有任何幫助?請提供意見:

傳送您對下列選項的寶貴意見...

這個網頁
Google Cloud Dataprep 說明文件
需要協助嗎?請前往我們的支援網頁