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: a- STRUCTvalue that contains the numerical input features to expand. You can specify less than or equal to- 10input features. Don't specify unnamed features or duplicate features.
- degree: an- INT64value that specifies the highest degree of all combinations in the range of- [1, 4]. The default value is- 2.
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.