vector_norm

使用指定度返回浮向量的 Lp 规范。 如果未指定,度默认为 2.0(Euclidean norm)。

有关相应的 Databricks SQL 函数,请参阅 vector_norm 函数

Syntax

from pyspark.sql import functions as dbf

dbf.vector_norm(vector=<vector>, degree=<degree>)

Parameters

参数 类型 说明
vector pyspark.sql.Column 或列名 输入向量列。
degree pyspark.sql.Column 或列名,可选 规范度(1.0 对于 L1、 2.0 L2、 float('inf') 无穷大规范)。 默认值为 2.0.

Returns

pyspark.sql.Column:Lp 规范作为浮点值。

示例

from pyspark.sql import functions as dbf
from pyspark.sql.types import ArrayType, FloatType, StructType, StructField

schema = StructType([StructField('v', ArrayType(FloatType()))])
df = spark.createDataFrame([([3.0, 4.0],)], schema)
df.select(dbf.vector_norm('v', dbf.lit(2.0).cast('float'))).first()[0]
# 5.0