Función ML.QUANTILE_BUCKETIZE

En este documento, se describe la función ML.QUANTILE_BUCKETIZE, que te permite dividir un atributo numérico continuo en buckets basados en cuantiles.

Cuando se usan en la cláusula TRANSFORM, los mismos cuantiles se usan automáticamente en la predicción.

Sintaxis

ML.QUANTILE_BUCKETIZE(numerical_expression, num_buckets) OVER()

Argumentos

ML.QUANTILE_BUCKETIZE toma los siguientes argumentos:

  • numerical_expression: la expresión numérica que se agrupará en buckets.
  • num_buckets: un valor INT64 que especifica la cantidad de buckets en los que se divide numerical_expression.

Resultado

ML.QUANTILE_BUCKETIZE muestra un valor STRING que contiene el nombre del bucket. Los nombres de los buckets que se muestran tienen el formato bin_<bucket_index>, con bucket_index a partir de 1.

Ejemplo

En el siguiente ejemplo, se divide una expresión numérica de cinco elementos en tres buckets:

SELECT
  f, ML.QUANTILE_BUCKETIZE(f, 3) OVER() AS bucket
FROM
  UNNEST([1,2,3,4,5]) AS f;

El resultado es similar al siguiente:

+---+--------+
| f | bucket |
+---+--------+
| 3 | bin_2  |
| 5 | bin_3  |
| 2 | bin_2  |
| 1 | bin_1  |
| 4 | bin_3  |
+---+--------+

¿Qué sigue?