Skip to main content

vector_cosine_similarity

Returns the cosine similarity between two float vectors. The vectors must have the same dimension.

For the corresponding Databricks SQL function, see vector_cosine_similarity function.

Syntax​

Python
from pyspark.sql import functions as dbf

dbf.vector_cosine_similarity(left=<left>, right=<right>)

Parameters​

Parameter

Type

Description

left

pyspark.sql.Column or column name

First vector column.

right

pyspark.sql.Column or column name

Second vector column.

Parameter

Type

Description

left

pyspark.sql.Column or column name

First vector column.

right

pyspark.sql.Column or column name

Second vector column.

Returns​

pyspark.sql.Column: Cosine similarity as a float value.

Examples​

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

schema = StructType([StructField('a', ArrayType(FloatType())), StructField('b', ArrayType(FloatType()))])
df = spark.createDataFrame([([1.0, 2.0, 3.0], [4.0, 5.0, 6.0])], schema)
df.select(dbf.vector_cosine_similarity('a', 'b')).first()[0]
# 0.974631...