我有以下結構的兩個 PySpark 資料框。我想執行交叉連接并計算余弦相似度。qry_emb 是一個帶有逗號分隔值的字串列。
如何將此字串轉換為密集向量?
df.printSchema()
# root
# |-- query: string (nullable = true)
# |-- qry_emb: string (nullable = true)
uj5u.com熱心網友回復:
要將字串轉換為向量,首先將字串轉換為陣列 ( split
),然后使用array_to_vector
from pyspark.sql import functions as F
from pyspark.ml.functions import array_to_vector
df = df.withColumn('qry_emb', array_to_vector(F.split('qry_emb', ',[ ]*').cast('array<double>')))
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/491785.html
標籤:阿帕奇火花 向量 pyspark apache-spark-sql apache-spark-ml
上一篇:基于月份間隔的下一個未來日期
下一篇:如何使用Scala為apache.spark.sql中的RelationalGroupedDataset類應用過濾器?