La funzione ML.BUCKETIZE

Questo documento descrive la funzione ML.BUCKETIZE, che consente di suddividere un'espressione numerica in bucket.

Sintassi

ML.BUCKETIZE(numerical_expression, array_split_points [, exclude_boundaries])

Argomenti

ML.BUCKETIZE accetta i seguenti argomenti:

  • numerical_expression: l'espressione numerica per il bucketize.
  • array_split_points: un array di valori numerici che forniscono i punti in cui suddividere il valore di numerical_expression. Fornisci i valori numerici in ordine, dal più basso al più alto. L'intervallo dei possibili bucket è determinato dai limiti superiore e inferiore dell'array. Ad esempio, se il valore array_split_points è [1, 2, 3, 4], esistono cinque potenziali bucket in cui è possibile suddividere il valore numerical_expression in bucket.
  • exclude_boundaries: un valore BOOL che determina se vengono utilizzati i limiti superiore e inferiore di array_split_points. Se TRUE, i valori dei limiti non vengono utilizzati per creare bucket. Ad esempio, se il valore array_split_points è [1, 2, 3, 4] e exclude_boundaries è TRUE, esistono tre potenziali bucket in cui il valore numerical_expression può essere bucket. Il valore predefinito è FALSE.

Output

ML.BUCKETIZE restituisce un valore STRING contenente il nome del bucket. I nomi dei bucket restituiti sono nel formato bin_<bucket_index>, mentre bucket_index inizia con 1.

Esempio

Il seguente esempio di bucket definisce un'espressione numerica con e senza confini:

SELECT
  ML.BUCKETIZE(2.5, [1, 2, 3]) AS bucket,
  ML.BUCKETIZE(2.5, [1, 2, 3], TRUE) AS bucket_without_boundaries;

L'output è simile al seguente:

+---------+----------------------------+
| bucket  | bucket_without_boundaries  |
+---------+----------------------------+
| bin_3   | bin_2                      |
+---------+----------------------------+

Passaggi successivi