全部產品
Search
文件中心

MaxCompute:ARRAY_NORMALIZE

更新時間:Jun 19, 2024

返回根據指定p範數(p Norm)對數組元素正常化後的數組。

命令格式

	array_normalize(array, p)

此函數等價於TRANSFORM(array, v -> v / REDUCE(array, 0, (a, v) -> a + POW(ABS(v), p), a -> POW(a, 1 / p)),但是REDUCE部分只執行一次。

參數說明

  • array:輸入數組,數組元素只支援FloatDouble類型。

  • p: 數組的p Norm。

傳回值說明

返回正常化之後的數組。

  • 如果數組為null或者有null數組元素,則返回NULL。

  • 如果p=0則返回原數組;p<0則拋出異常。

樣本

SELECT  array_normalize(array(10.0, 20.0, 50.0), 1.0);

返回結果如下:

[0.125, 0.25, 0.625]

相關函數

ARRAY_NORMALIZE函數屬於複雜類型函數,更多對複雜類型資料(例如ARRAY、MAP、STRUCT、JSON資料)的處理函數請參見複雜類型函數