The ML.POLYNOMIAL_EXPAND function
This document describes the ML.POLYNOMIAL_EXPAND
function, which lets you
calculate all polynomial combinations of the input features.
You can use this function with models that support manual feature preprocessing . For more information, see the following documents:
Syntax
ML.POLYNOMIAL_EXPAND(struct_numerical_features [, degree])
Arguments
ML.POLYNOMIAL_EXPAND
takes the following arguments:
-
struct_numerical_features: aSTRUCTvalue that contains the numerical input features to expand. You can specify less than or equal to10input features. Don't specify unnamed features or duplicate features. -
degree: anINT64value that specifies the highest degree of all combinations in the range of[1, 4]. The default value is2.
Output
ML.POLYNOMIAL_EXPAND
returns a STRUCT<STRING>
value that contain all
polynomial combinations of the numerical input features with a degree no larger
than the passed-in degree, including the original features. The field names of
the output struct are concatenations of the original feature names.
Example
The following example calculates the polynomial expansion of two numerical features:
SELECT ML . POLYNOMIAL_EXPAND ( STRUCT ( 2 AS f1 , 3 AS f2 )) AS output ;
The output looks similar to the following:
+-------------------------------------------------------------------+
| output |
+-------------------------------------------------------------------+
| {"f1":"2.0","f1_f1":"4.0","f1_f2":"6.0","f2":"3.0","f2_f2":"9.0"} |
+-------------------------------------------------------------------+
What's next
- For information about feature preprocessing, see Feature preprocessing overview .

